0

初心者です。これがコードです。

    $(window).resize(function() {
        screenlarge();
    });
    $(window).resize(function() {
        screensmall();
    });
    function screenlarge()  {
      windowsize = $(window).width();
      if (windowsize < 1040) {
          $('#wrappernav').fadeOut("fast");
          $('#sidebar').fadeOut("fast");
          $('#wrappernavbg').fadeOut("fast");
          $('#navigationon').fadeIn("fast");
    }
    } 
    function screensmall()  {
      windowsize = $(window).width();
      if (windowsize >= 1040) {
          $('#wrappernav').fadeIn("fast");
          $('#sidebar').fadeIn("fast");
          $('#wrappernavbg').fadeIn("fast");
          $('#navigationon').fadeOut("fast");   
    }
    }
$(document).ready(function(){
    $('#naviclosed').bind('click', function () {
        $('#wrappernav').fadeIn("fast");
        $('#sidebar').fadeIn("fast");
        $('#wrappernavbg').fadeIn("fast");
        $('#navigationon').fadeOut("fast");
    });
        $("#arrow").bind('click', function(){
        $('#wrappernav').fadeOut("fast");
        $('#sidebar').fadeOut("fast");
        $('#wrappernavbg').fadeOut("fast");
        $('#navigationon').fadeIn("fast");
    });
});

私の質問は、#arrowを押したときにscreenlarge()とscreensmall()を削除し、#navigationonを押したときに関数を再度追加するにはどうすればよいですか。

助けてください!ありがとうございました!

4

1 に答える 1

0

まず、をマージしscreenlargeて、のscreensmallような単一の関数にしsreenSizeます。わかりやすくするために。

イベントのバインドを解除するには、次の手順を実行します。

$(window).off('resize', screenSize);

'resize'イベント用の他のイベントハンドラーがない場合は、次のようにすることもできます。

$(window).off('resize');
于 2013-01-07T22:53:03.863 に答える