2012-07-10 72 views
2

我似乎無法得到此正常工作。jquery cluetip動態元素

我正在寫幾個鏈接到DOM(通過json文件循環並附加到DOM),然後我需要這些元素來觸發懸停的工具提示。

我沒有在任何地方看到這種方法的一個很好的例子 - cluetip網站顯示了一個簡單的例子,然後尋找a和調用cluetip。我想一定有做這個.live或.delegate方式:

$("body").delegate("a.toolTip", "mouseover", function (event) { 

      $('a.toolTip').cluetip({ 
       showTitle: false, 
       attribute: 'title', 
       local: false 
       }); 

      event.preventDefault(); 

     }); 

但這並不觸發第一鼠標懸停和我得到一個「對不起,內容不能被載入」

有什麼建議嗎?

謝謝

+0

你用'mouseenter'和'mouseleave'試過'.on()'嗎? – 2012-07-10 20:25:42

回答

4

您需要重新觸發mouseover事件。

$("body").delegate("a.toolTip", "mouseenter", function (event) { 
    $('a.toolTip').cluetip({ 
     showTitle: false, 
     attribute: 'title', 
     local: false 
    }).trigger("mouseenter"); 

    event.preventDefault(); 
}); 

其他雞蛋裏挑骨頭的東西:

event.preventDefault()應該先 ,你應該防止插件被多次應用。

$("body").delegate("a.toolTip:not(.hasTooltip)", "mouseenter", function (event) { 

    $('a.toolTip').cluetip({ 
     showTitle: false, 
     attribute: 'title', 
     local: false 
    }).addClass("hasTooltip").trigger("mouseenter"); 
    event.preventDefault(); 
}); 

編輯:鼠標懸停應該已經了mouseenter和event.preventDefault真的應該是最後一次,因此如果它失敗了,默認的提示仍然可以工作。

+0

定位起初很麻煩,內容仍然沒有加載 - 雖然標題確實存在於鏈接中。 – Jason 2012-07-10 20:39:04

+0

@Jason看我的編輯,應該是mouseenter。 – 2012-07-10 20:50:57