jQuery .live() 与悬停插件一起使用

发布于 2024-11-18 03:39:53 字数 618 浏览 6 评论 0原文

我在我的应用程序中使用 jQueryTools 工具提示插件。显然,这个插件有自己的悬停功能来创建工具提示。该插件假定 DOM 中的下一个元素是工具提示的内容,这对我来说不起作用,所以我动态添加该元素。该元素在鼠标移出时被删除。第一次这一切都工作得很好,但是当您下次将鼠标悬停在触发器上时从 DOM 中删除该元素时,插件无法找到它并且不会触发。

tl;dr - 如何将 jQuery 的 live() 应用于具有自己的 mouseEvent 的插件?

jQueryTools 工具提示

$('.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?

jQueryTools Tooltip

$('.help').hover(
        function() {
            $('<div class="tooltip">sup</div>').insertAfter(this);
        },
        function() {
            $(this).next("div.tooltip").remove();
        }
        );
$('.help').tooltip();

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

探春 2024-11-25 03:39:53

我认为您对 jQuery 的设置有些困惑,但这很有效:

$('.help').hover(
    function() {
    if($(this).next("div.tooltip").length==0){
        $('<div class="tooltip">sup</div>').insertAfter(this);
    }},
    function() {
    }
    );
$('.help').tooltip();

祝您好运

I think you are confusing a bit jQuery with your setup but that works:

$('.help').hover(
    function() {
    if($(this).next("div.tooltip").length==0){
        $('<div class="tooltip">sup</div>').insertAfter(this);
    }},
    function() {
    }
    );
$('.help').tooltip();

Good luck

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文