当没有给出destroy参数时,取消绑定jQuery插件

unbind a jQuery plugin when no destroy argument is given

本文关键字:取消 绑定 jQuery 插件 参数 destroy      更新时间:2023-09-26

我正在使用一个名为Sidr的插件来创建一个类似Facebook的侧边栏。它以开头

$('#menu_trigger').sidr({
    name: 'sidr-right',
    side: 'right'
});

问题是,我只想在特定的视口大小下有这种效果。我知道很多jQuery插件都带有一个类似destroy的参数来卸载脚本。但是这个插件没有。

有人知道当触发特定的browsersize时,我如何将此函数从#menu_trigger上解除绑定吗。类似:

enquire.register("screen and (max-width:560px)", {
  $('#menu_trigger').sidr({
    // unload, unbind
  });
}

感谢

http://jsbin.com/bemimu/8/edit

您可以使用unbind并传入对所选元素的插件引用,然后在JavaScript.$中检查窗口大小。sidr("关闭","右侧");

JS:

function clickForSidr() {
var ww = document.body.clientWidth;
  if(ww < 560){
      if(sidrIsOpen){
        $.sidr('close', 'sidr-right');
      }else {
        $.sidr('open', 'sidr-right');
      }
        sidrIsOpen = !sidrIsOpen;
  }
};
var sidrIsOpen = false;
    $('.unbindme').on('click',function(){
     clickForSidr();
    });

标记:

<div class="unbindme" >unbindme</div>