2016-06-13 8 views
0

Ich habe für eine Weile an einem Stück jQuery-Code gearbeitet und ich kann es nicht so funktionieren, wie ich es möchte. Grundsätzlich möchte ich diesen jQuery-Code unter der Bildschirmbreite von 768px komplett deaktivieren.Deaktivieren Sie eine jQuery-Funktion bei einer bestimmten Bildschirmbreite

Hier ist der Code:

$(document).ready(function() { 
    $(".resp-menu-btn").click(function() { 

     if ($('.resp-menu-btn').is(':animated')) { 
      return; 
     } 

     if ($('.site-nav').css('display') == 'none') { 
      $().stop().slideToggle({ "display": "block"}, 600); 
      $('.site-nav ').stop().slideToggle(600); 
     } 

     else { 
      $().animate({"display": "none"}, 600); 
      $('.site-nav').slideToggle(600); 
     } 

    }); 
}); 

ich ein paar Dinge wie versucht haben:

if(window.innerWidth < 768px) return true; 
else return false; 

und

if ($(window).width() > 768) { 
myCode 
} 

aber nichts scheint zu funktionieren.

Können Sie mir einige Hinweise geben, wie Sie das gewünschte Ergebnis erzielen können? Danke vielmals!

Antwort

0

Haben Sie eine Anweisung ohne "px" versucht? Ich meine, Sie sollten so verwenden

if(window.innerWidth() < 768) return true; else return false; 

Die Eigenschaft window.innerWidth ist schreibgeschützt.

+1

Ich habe es gerade versucht, aber bisher keine Chance. Ich denke, ich könnte es falsch in meinem Code verwenden. Ich werde versuchen zu optimieren, bis es funktioniert. Vielen Dank! –

0

Ich bin mir nicht sicher, warum Sie dies tun möchten, aber Sie können click -Ereignis Ihrer Schaltfläche Element nach 768px zu lösen.

Wenn Sie eine andere Funktion an dieses Element binden möchten, können Sie es an eine andere Funktion für Klickereignis binden.

+0

Interessante Option hier, ich werde es versuchen! Danke vielmals! –