Ich verwende Fancybox in einer Aspx-Seite. Die Dokument-bereit-Funktion funktioniert auf dieser Seite für eine Lightbox nicht. Jemand sagte mir, ich solle einen neuen Javascript-Code schreiben, um die Lightbox auf dieser Seite zu laden.
Alternative für die Funktion “$(document).ready”.
- Fügen Sie jQuery hinzu.
- Überprüfen Sie die Netzwerkregisterkarte, dass Sie 404 nicht erhalten.
- Überprüfen Sie die Konsole, dass Sie nicht “$ ist unbekannt” erhalten.
Machen Sie Sachen, wenn DOM bereit ist.
$(function(){
// DOM Ready - do your stuff
});
-
Ich denke, er meint eine Alternative zu jquery load event
– Claudius
20. Dezember 2013 um 17:15 Uhr
-
Unabhängig davon, was das OP gemeint hat, besuche ich diese Seite immer wieder über Google (weil ich diese raffinierte Konvention zu vergessen scheine). Danke @user338195!
– KönigWelpe
30. Dezember 2014 um 19:43 Uhr
Versuche dies:
document.addEventListener('DOMContentLoaded', function() {
// ...
});
Funktioniert in modernen Browsern und IE9+
-
Beachten Sie, dass dies nicht funktioniert, wenn das DOM bereits geladen wurde. Wenn dies ein Problem darstellt, sehen Sie sich stattdessen diese Antworten an: stackoverflow.com/q/799981 stackoverflow.com/q/9899372
– Pikamander2
24. September 2019 um 12:26 Uhr
Sie könnten die Standard-js-onload-Funktion verwenden, um sie auszuführen, wenn Sie das vermissen:
window.onload = function() {};
Beachten Sie, dass dies zu Problemen mit Bibliotheken führen kann – ich habe das nicht untersucht.
Ich glaube, mit dem Skript defer
Tag ist die beste Lösung. Zum Beispiel,
<script src="https://stackoverflow.com/questions/12366410/demo_defer.js" defer></script>
Mehr Informationen bei W3-Schulen.
Am besten verwenden Sie Folgendes:
jQuery.noConflict();
(function($) {
$(function() {
// by passing the $ you can code using the $ alias for jQuery
alert('Page: ' + $('title').html() + ' dom loaded!');
});
})(jQuery);
Wenn Sie Ihr Skript ausführen möchten, wenn alles geladen ist, verwenden Sie
$(window).load(function(){ // ...})
– RAM
11. September 2012 um 9:15 Uhr
@undefined, das ist fast dasselbe wie
$(document).ready(function(){ ... })
.load()
wartet, bis auch die Grafiken geladen sind.– alexbusu
11. September 2012 um 9:19 Uhr
Warum funktioniert $(document).ready nicht? Sie haben jQuery enthalten, oder?
– Der Namenlose
11. September 2012 um 9:42 Uhr
versuchen Sie zuerst die Methode jQuery.noConflict().
– Summen
11. September 2012 um 9:44 Uhr