Frage

Ich habe einfache modale Ansicht Foto-Galerie, das Bild wird den Benutzer angeklickt und zeigt es in modal view.It funktioniert, aber Problem, wenn Benutzer geklickt 2 oder 5-mal während Modellansicht öffnet dann zeigt es 2 oder 5 die gleichen Bilder in modaler Ansicht . Früher habe ich wie

$('.popup_block').find('div#userPhoto').append($theImage.clone());

Wie kann ich es begrenzen?

Hier ist meine Funktion, dass Benutzer klicken Sie Aktion zu fangen. Ladefunktion, die modale Ansicht erstellt und so köchelt es dauert 2-3 seccond

$(this).bind('click',function(){
var $this=$(this);

loading($this);

});
War es hilfreich?

Lösung

Statt .append() die Inhalte anhängt, verwenden .empty() ersten oder .html() die ersetzt es:

$('.popup_block').find('div#userPhoto').html($theImage.clone());

Für eine Spätzundung tun, ist dies nicht, wie es aussieht, was ist wirklich mit .html() geschieht oben ist eine Abkürzung für diese :

$('.popup_block').find('div#userPhoto').empty().append($theImage.clone());

Andere Tipps

Haben Sie versucht, unbind?

Setzen Sie ein unbind in der loading() Funktion, so dass aufeinanderfolgende Klicks nicht aufrufen, um den Prozess. -

$("#element").unbind('click'); 

Wo #element ist die Kennung des Elements, auf dem Sie die bind() anrufen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top