Door
Jop B
op 15-11-2014 12:35
gewijzigd op 15-11-2014 15:55
2.412 views
Hallo,
Om jquery te programmeren ben ik zelf wat dingetjes het maken.
Nu heb ik de volgende code, alleen werkt de laatste functie niet
/maak klik functie
$(".button").click(function(){
//maak variabelen aan
var opacity = ('0.7')
var time = (800)
var overlay = $('<div id="overlay"></div>');
var popup = $('<div id="popup_language"></div>');
// als er geklikt is voeg dit toe aan de body en fade
$('body').append(overlay, popup);
(overlay).fadeTo(time, opacity);
// als opacity gelijk is fade popup in
if($(overlay).css('opacity') == opacity){
(popup).fadeIn(time);}
});
Mijn tweede vraag is:
Is het mogelijk om de variabel die ik aan maak voor alle functies te gebruiken in een code?
Als ik de click functie afsluit en dan vervolgens een nieuwe functie aanmaak vervallen de variabelen namelijk.
Bedankt voor de oplossing op mijn tweede vraag. Nu kan ik weer aan de slag :-)
Weet iemand misschien waarom mijn if functie niet werkt?
//document is klaar?
$(document).ready(function(){
//maak variabelen aan
var opacity = (0.7);
var time = (800);
var overlay = $('<div id="overlay"></div>');
var popup = $('<div id="popup_language"></div>');
/maak klik functie
$(".button").click(function(){
//bij klikken voeg dit toe aan body
$('body').append(overlay, popup);
(overlay).fadeTo(time, opacity);
});
//als opacity gelijk is aan fade popup in
if($(overlay).css('opacity') == opacity){
(popup).fadeIn(time);}
});
Helaas werkt dat ook niet. Heb zelfs de opacity var geheel vervangen door de normale waardes.
Het gekke is als ik het kleiner dan teken inzet hij wel infade. Maar hij mag de popup pas infade als de opacity gelijk is.
De opmerking was inderdaad niet correct, maar de variabelen wat zou daar mis mee zijn?
In de click functie werken ze wel. Alleen de 2e fade niet. als je kleiner dan of groter dan gebruikt doet die het wel.
Ik wil hem laten controleren of de overlay volledig is ingefaded is dat het geval dan fade popup in.
Je creëert met jQuery dus nieuwe elementen die geen plaats hebben in de DOM. Waar komen ze te staan?
Ik zou ze persoonlijk gewoon in de HTML zetten die PHP (waarschijnlijk) maakt.
En Javascript komt dan later er een keer overheen. Die doet iets met ze.
Er worden inderdaad 2 nieuwe elementen toegevoegd aan de body.
Ze worden onderaan gezet. omdat het om een overlay gaat heeft die width + height 100% staan.
Het enigste wat ik wil weten is hoe je een check functie kan maken of iets is ingefaded of is uitgefaded via een if statement.
Dus je hebt bijvoorbeeld 2 elementen.
element 1 word met een fade zichtbaar hierna moet pas element 2 zicht baar worden.