2012-08-23 26 views
1

我正在創建一個簡單的工具提示插件,它將「標題」屬性內容顯示爲工具提示文本。所以我想禁用顯示工具提示的默認瀏覽器行爲,因爲我在div中顯示它。所以我使用了下面的代碼,但這不起作用,我可以看到默認工具提示和我的工具提示在一起,默認工具提示與我的工具提示重疊。禁用工具提示文本表單鏈接

$("a").hover(function(e){ 
    e.preventDefault(); 
}); 
+0

爲什麼重新發明車輪朋友?試試這個。 http://bassistance.de/jquery-plugins/jquery-plugin-tooltip/ – naveen

回答

3

你爲什麼不只是確保有在<a>標籤沒有alttitle屬性。

<a href="http://google.com" alt="Google!" title="Google!" />Goto Google</a> 

更改 -

<a href="http://google.com" alt="Google!" />Goto Google</a> 

因此,所有你需要做的就是運行要remvove上的默認提示行爲的所有<a>標籤這個jQuery代碼 -

$(".desiredElements").removeProp('alt').removeProp('title'); 

如果您想維護這些工具提示以供後期使用,應該將它們保存在$.data對象中,並返回第二個懸停函數中的值,即「懸停」回調。

$('.desiredElements').hover(function() { 
    $thisCached = $(this); 
    $.data(this, 'title', $thisCached.attr('title')); 
    $thisCached.removeAttr('title').removeAttr('alt'); 
},function(){ 
    $thisCached = $(this); 
    $thisCached.attr('title',$.data(this, 'title'); 
    $thisCached.attr('alt',$.data(this, 'title'); 
}); 
+0

這是最簡單的方式來分配工具內容,沒有任何方法來刪除默認的工具提示?如果是這樣,那麼我將不得不考慮你的建議:) –

+0

@www - 查看我的更新...您可以輕鬆地刪除工具提示與jQuery ... – Lix

+0

removeprop將刪除「title」和「alt」的內容,我會沒有任何東西可以顯示在我的工具提示中。 –