jQuery .live() 与悬停插件一起使用
我在我的应用程序中使用 jQueryTools 工具提示插件。显然,这个插件有自己的悬停功能来创建工具提示。该插件假定 DOM 中的下一个元素是工具提示的内容,这对我来说不起作用,所以我动态添加该元素。该元素在鼠标移出时被删除。第一次这一切都工作得很好,但是当您下次将鼠标悬停在触发器上时从 DOM 中删除该元素时,插件无法找到它并且不会触发。
tl;dr - 如何将 jQuery 的 live() 应用于具有自己的 mouseEvent 的插件?
$('.help').hover(
function() {
$('<div class="tooltip">sup</div>').insertAfter(this);
},
function() {
$(this).next("div.tooltip").remove();
}
);
$('.help').tooltip();
I'm using the jQueryTools tooltip plugin in my app. This plugin has its own hover function, obviously, to create the tool tip. The plugin assumes the next element in the DOM to be the content for the tooltip, which doesn't work for me, so I'm adding the element on the fly. This element is removed on mouseout. This all works great the first time, but when the element is removed from the DOM the next time you hover over the trigger, the plug in can't find it and doesn't fire.
tl;dr - how do I apply jQuery's live() to a plugin which has its own mouseEvent?
$('.help').hover(
function() {
$('<div class="tooltip">sup</div>').insertAfter(this);
},
function() {
$(this).next("div.tooltip").remove();
}
);
$('.help').tooltip();
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我认为您对 jQuery 的设置有些困惑,但这很有效:
祝您好运
I think you are confusing a bit jQuery with your setup but that works:
Good luck