在鼠标上应用 .delay() 在我的插件中输入
To apply .delay() on mouseenter in my plugin
我得到了一个div,在mouseenter上,应该显示另一个div。我不确定如何在插件中实现这一点。这是我的代码,也是我迄今为止尝试过的。
代码: 小提琴
<div class="hover-me"></div>
<div class="show-me"></div>
var Nav = {
hover_me: $('.hover-me'),
show_me: $('.show-me'),
init: function() {
Nav.toggle_display();
console.log('init');
},
toggle_display: function() {
Nav.hover_me.mouseenter(function() {
Nav.show();
});
Nav.hover_me.mouseleave(function () {
Nav.hide();
});
},
show: function() {
Nav.show_me.fadeIn();
},
hide: function() {
Nav.show_me.fadeOut();
}
};
我试图这样做,没有任何运气。
Nav.hover_me.mouseenter(function() {
Nav.delay(1000).show();
});
参见Jimbo的评论:
var Nav = {
// [...]
timeoutId: undefined,
// [...]
};
Nav.hover_me.mouseenter(function() {
Nav.timeoutId = setTimeout(function() {
Nav.show();
}, 1000);
});
Nav.hover_me.mouseleave(function () {
if (Nav.timeoutId) { clearTimeout(Nav.timeoutId); }
Nav.hide();
});
看小提琴
相关文章:
- 我的jQuery插件参数没有正确启动,遇到了问题
- 我如何才能找到哪些网站使用我的jQuery插件
- 我的插件不适用于不同的回调
- 我在javascript文件中的更改没有反映在我的插件中
- 在我的插件中无法识别引导和 css
- Jquery为我的插件实现了一个成功和错误回调,该插件与AJAX一起工作
- 我的插件上有 Css 覆盖问题
- 在我的插件中有条件地加载外部javascript库
- 我怎么能给我的属性的默认数组访问传入的jQuery对象在我的插件
- 如何调用ajax函数,将调用我的插件's函数
- 是否有可能在javascript中重新启动我的插件
- 我想有一个简单的jquery滑块为我的插件
- 这是正常的行为,为每一个Firefox窗口,我的插件的另一个实例创建
- 为什么this.find()不能在我的插件中工作?
- 我有一些麻烦传递一个事件到另一个函数在我的插件
- jQuery插件创作:如何让我的插件操作多组值
- 我的插件不工作在Opera
- 如何使我的插件在重复的HTML标记上工作,但单独操作
- 我应该如何编写我的插件来处理“实时”元素
- 在鼠标上应用 .delay() 在我的插件中输入