Wie bekomme ich diese Funktion, um nicht nur auf Fenstergröße, sondern auch beim ersten Laden der Seite zu laufen?jQuery Funktion zum Ändern der Größe funktioniert nicht beim Laden der Seite
$(window).resize(function() {
...
});
Wie bekomme ich diese Funktion, um nicht nur auf Fenstergröße, sondern auch beim ersten Laden der Seite zu laufen?jQuery Funktion zum Ändern der Größe funktioniert nicht beim Laden der Seite
$(window).resize(function() {
...
});
Sie werden verwenden möchten:
$(document).ready(function() { /* your code */ });
Um etwas passieren onload zu machen. Wenn Sie etwas wollen onload und onresize arbeiten, sollten Sie tun:
onResize = function() { /* your code */ }
$(document).ready(onResize);
$(window).bind('resize', onResize);
Dieses Verhalten ist von Entwurf.
Sie sollten Ihren Code in eine benannte Funktion einfügen und dann die Funktion aufrufen.
Zum Beispiel:
function onResize() { ... }
$(onResize);
$(window).resize(onresize);
Alternativ können Sie ein Plugin binden automatisch machen und einen Handler ausführen:
$.fn.bindAndExec = function(eventNames, handler) {
this.bind(eventNames, handler).each(handler);
};
$(window).bindAndExec('resize', function() { ... });
Beachten Sie, dass es nicht richtig funktioniert, wenn der Handler verwendet das event
Objekt, und dass es nicht jede Überladung der bind
Methode abdeckt.
$(document).ready(onResize);
$(window).bind('resize', onResize);
nicht mit mir nicht funktioniert.
Versuchen
$(window).load('resize', onResize);
$(window).bind('resize', onResize);
statt.
(ich weiß, diese Frage ist alt, aber Google gesendet hier mir, so ...)
Ein weiterer Ansatz, können Sie einfach Setup einen Handler und fälschen ein Resize-Ereignis selbst:
// Bind resize event handler through some form or fashion
$(window).resize(function(){
alert('Resized!');
});
// Trigger/spoof a 'resize' event manually
$(window).trigger('resize');
ich denke, die beste Lösung nur um es an die Last zu binden und die Größe Ereignis:
$(window).on('load resize', function() {
// your code
});
Dies ist die einfachste Antwort aller –
das es einfach und sauber macht. – jamesnotjim