Ich habe ein Containerelement, das mehrmals geladen wird, um variablen Inhalt auf einem Klickereignis durch eine Ajax-Anfrage und nach Ajax zu zeigen Complete ich habe einige Funktionen aufgerufen einschließlich einer Funktion (A) innerhalb eine if-Anweisung.Funktion innerhalb if Anweisung mehrmals ausgeführt
Mein Problem ist, wenn Funktion (A) schließlich aufgerufen wird, wird es mehrmals aufgerufen, je nachdem wie oft der Container geladen wurde, bevor die if-Anweisung wahr ist.
ist hier einfache Version meines Code:
$(".button").on("click", function(){
loadContainer();
});
var loadContainer = function(){
$(".container").load(url, function(){
var x = $(".x");
if(x.length>0){
A();
};
});
};
x
ist ein Element $(".x")
, die in den Container geladen werden und die Funktion (A) sollte nur aufgerufen werden, wenn das Element geladen wird. d. h. $(".x").length>0
Wenn (x.length> 0) wahr ist, sagen wir dreimal Laden des Containers, dann wird die Funktion (A) dreimal aufgerufen.
gibt es einen Weg um dies oder einen Weg, um sicherzustellen, dass Funktion (A) nur einmal aufgerufen wird ??
Edit: Mein vollständiger Code:
ajaxBtn.on("click", function(e) {
loadContainer(url, curtain, mainContainer, body, links);
});
var loadContainer = function(url, curtain, maincontainer, body, links) {
$(".main-container").load(url + " .main-container > *", function() {
$("#logo").css({
"z-index": "400"
});
mainFun();
curtain.removeClass("full");
links.removeClass("here");
body.removeClass("no-scroll");
clearInterval(timer);
getFlexIndex();
position = 0;
if (vidContainer.length > 0) {
youTubeLazyLoad();
}
});
};
bitte davon aus, dass alle Variablen sind bereits definiert.
nehmen 'A()' aus der Schleife hinzugefügt wird. oder '$ (Dokument) .one ('load', A)' – zer00ne
Was ist 'x'? 'A' wird wahrscheinlich für jeden' .container' genannt, natürlich abhängig vom Wert des ANONYMOUS 'x'. –
'x' ist ein Element' $ (". X") ', das in den Container geladen wird und die Funktion (A) sollte nur aufgerufen werden, wenn dieses Element geladen wird. dh '$ (". x "). length> 0' – moamenezzat