Ich versuche ein jquery-Ereignis zu löschen, wenn das Fenster> 490 wird. Die Elemente unblind() oder off() deaktivieren jedoch nicht die Aktion, die aktiviert wird, wenn das Fenster kleiner als 490px wird. Warum ist das? Kennt jemand eine Methode, um eine Auswahl in den ursprünglichen Zustand zurück zu versetzen? So lösen Sie das jQuery-Ereignis, wenn die Fenstergröße geändert wird
$(document).ready(function(){
$(window).resize(function(){
if ($(window).width()<490) {
$("#shown").unbind().click(function(){
event.preventDefault();
$("body div hidden").toggle('slow');
});
}
else if ($(window).widht()>=490) {
$("#shown").unbind();
$("body div hidden").unbind();
}
});
});
</script>
was genau möchten Sie erreichen? –
Es wäre viel einfacher, die Fenstergröße im Click-Ereignis selbst zu überprüfen, als Event-Handler ständig zu binden/zu lösen. Sie können dies auch mit CSS allein erreichen, indem Sie eine Medienabfrage verwenden und "Zeiger-Ereignisse: keine" –
"versteckte" Auswahl wirkt verdächtig. Ich denke, es ist ein Klassen- oder Pseudo-Selektor ': hidden', kein Elementtyp. Wie auch immer, du solltest besser Rorys Rat befolgen. –