Door
Jop B
op 02-05-2014 10:06
gewijzigd op 02-05-2014 10:43
1.424 views
Hallo,
Helaas loop ik tegen een probleem aan bij het programmeren.
Op de site staan 10 tallen javascripts. Deze worden door een {if} functie opgeroepen waar nodig is.
Zelf heb ik een functie geschreven wat eigenlijk continu moet functioneren.
Als ik [code lang=js]<script>
$(function(){
$(window).scroll(function(){
console.log(window.scrollY)
if(window.pageYOffset >= 100 ) {
$(".nav").css({
position: "fixed",
top: 0
});
} else {
$(".nav").css({
position: "absolute",
top: 100
});
}
});
});
</script>
[/code] in de head of wel onder de juiste div plaats word de pagina wit. Dit omdat hij ergens mee een confict heeft. Nu wil ik deze via een {if} functie aanroepen. Is dit juist, of hoe kan ik dit anders doen?
Zo werkt het inderdaad. Op de grote en officiƫle site zitten heel veel scripts (javascript en php)
Als ik mijn code in de head of onder de juiste div zet, werk de hele site niet meer.
Ik ben gaan zoeken, en zie dat alle javascripts worden aangeroepen door bijvoorbeeld:
{if $LV_navbar} en dan de link naar mijn code{/if}
Mijn vraag is, hoe werkt dit, en is dit mogelijk wat ik wil?
Dit wat hierboven staat staat binnen de head tags.
Het is inderdaad een template. Alles wat in de html gebeurt gaat langs de index.php.
Daarom werkt het javascript gedeelte niet. Alle scripts en css bestanden worden door de {if} aangeroepen.
Bij de zoomfunctie op afbeeldingen bijv.:
Dit voert jou functie uit als het document klaar is met laden.
het {if} statement heb je niet nodig tenzij je dit niet altijd wil uitvoeren.
Aan de syntax te zien draai je smarty template engine, en de laatste keer dat ik daar mee werkte deed een if in een template in essentie het zelfde als een if in php.
Let er alleen wel op dat je hem binnen je <head> plaatst maar buiten alle {if}{/if} blokken
Bedankt voor de reactie. Helaas deed hij dit ook niet, maar heb het anders kunnen oplossen.
De javascriptcode heb ik tussen {literal} tags geplaatst, waardoor de site de code wel pakt.
Bedankt allemaal voor het meedenken :)