如何从元素中有效地取消绑定()hoverintent()

时间:2014-06-15 18:14:43

标签: javascript jquery twitter-bootstrap-3 unbind hoverintent

我使用HoverIntent插件在我的Bootstrap 3导航中创建悬停下拉列表。但是,对于较小的尺寸,我仍然希望使用本机点击触发器来激活下拉菜单而不是悬停。我尝试使用enquire.js,这允许我在屏幕尺寸进入指定宽度时调用函数,而在离开该宽度时调用另一个函数。到目前为止,这是我的代码:

enquire.register("screen and (min-width: 767px)", {
 match : function() {
  hoverIntentInit();
 },
 unmatch : function() {
  removeHoverIntent();
 }
});

function removeHoverIntent(){
  // remove the hoverintent() function <-- this is what I need
}

function hoverIntentInit(){
  var config = {
     timeout: 900,
     over: showMenu,
     out: hideMenu};
 $('.dropdown').hoverIntent(config);
}
function showMenu(){
  // code that shows the dropdown (not important)
}
function hideMenu() {
  // code that hides the dropdown (not important)
}

我几年前发现了一个类似的问题here。但是,那里的答案要么不起作用,要么他们从元素中删除hoverIntent和click事件,这不是我想要的(我希望保留本机Bootstrap点击事件)。

请帮我解决这个问题,我已经花了一天多的时间,但仍无法找到解决方案。

谢谢!

0 个答案:

没有答案