Bootstrap-Modal-Tasten reagieren nicht auf klicken Sie auf
Ich bin eine stute mit Bootstraps Tasten in einer modal, popover. Was ich auch Tue ich kann nicht das click-Ereignis ausgelöst. Neueste Bootstrap, jQuery-1.7.1.
Innerhalb der modal-ich habe eine Fußzeile mit den Schaltflächen
<div class="modal-footer">
<a href="#" class="btn cancelBtn">Cancel</a>
<a href="#" class="btn dontSaveBtn">Don't Save</a>
</div>
Und mein JS nicht funktioniert (klicken Sie ist nie geschossen)
$("#navigate-away .cancelBtn").on("click", function(event){
console.log('Click.');
$('#navigate-away').modal('hide');
});
Kann ich beweisen, dass es funktioniert durch die Verwendung von hover statt click (hover feuert ok)
$("#navigate-away .cancelBtn").on("hover", function(event){
console.log('Click.');
$('#navigate-away').modal('hide');
});
Scheint es das click-Ereignis wird geschluckt intern? Ich sehe überall SO Leute mit dieser exakten Methode ohne Probleme. Was einfaches, was bin ich?
InformationsquelleAutor lucygenik | 2012-02-24
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese sich in der Tat um einen Konflikt mit einer anderen Bibliothek. Es war ein Schocker, zu Debuggen, ich landete immer es relativ einfach mit Allan Jardine ' s Visual Event-bookmarklet an http://www.sprymedia.co.uk/article/Visual+Event . Dank Allan Sie gespeichert mein baconator.
Ich habe das gleiche problem, aber ich kann nicht sehen, die Verwendung von Visual Event mit dem modal, popover. Es funktioniert gut auf der Seite, aber wenn ich aktivieren des modalen popup-Visuelle Event nicht mehr funktioniert. Auch, was war Ihre Bibliothek Konflikt?
Ooo sorry, Adam, das war vor langer Zeit. Ich denke vielleicht es war etwas so dumm, wie eine doppelte ID?
InformationsquelleAutor lucygenik
Versuchen Sie, preventDefault, um Ihre click-Ereignis, und ändern, verwenden Sie die
delegate
Stil der Bindung:Sind Sie sicher, dass dieser Abbrechen-button enthalten ist, innerhalb
#navigate-away
? Vielleicht ist der Selektor ist nicht passend richtig.Ebenfalls funktioniert die Abbrechen-Schaltfläche tatsächlich existieren, wenn Sie binden des click-Ereignisses, oder kann man das später erstellt wird? Wenn die später erstellt werden, müssen Sie ändern Sie Ihren Aufruf
.on()
eher ein.delegate
-Stil eher als eine.bind
Stil.Ich kann bestätigen, dass das element richtig gelegen mit hover statt click-funktioniert wie erwartet. Die Konsole sagt mir, das element erbracht hat, jedoch bin ich kein JS-ninja, vielleicht ist es noch nicht instanziert sich selbst vollständig. Ich werde versuchen, Delegieren,... standby Anrufer
Um zu sehen, was ich meine, durch die Delegierten der Art, siehe meine aktualisierte Antwort.
InformationsquelleAutor Jake Feasel