2011-06-29 41 views
1

我在我的應用程序中使用jQueryTools工具提示插件。顯然,這個插件有自己的懸停功能來創建工具提示。該插件假定DOM中的下一個元素是工具提示的內容,這對我不起作用,所以我即時添加元素。這個元素在mouseout上被刪除。這一切在第一次都很好,但是當元素從DOM中刪除時,下次您將鼠標懸停在觸發器上時,插件無法找到它並且不會觸發。jQuery .live()與懸停插件一起使用

tl; dr - 如何將jQuery的live()應用到具有自己mouseEvent的插件?

jQueryTools Tooltip

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

回答

0

我想你混淆了一下jQuery的與你的設置,但該作品:

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

好運

+0

我是誰?等等,我明白你在做什麼。而不是刪除div,我應該檢查它尚未創建。這樣可行。聰明的思考! – geraddavis