簡體   English   中英

jQuery Tipsy插件

[英]jquery tipsy plugin

Tipsy jquery插件已安裝在我的應用中

這在我的加載功能中

 $(function() {
    tipsy();
 });

下面的代碼在一個js文件中

var htm = '<div id="new_div" onmouseover="tipsy(this);">' ;

function tipsy(tip)
{
    if ( '' != sumtitle )
    {
        tip.title =  tip.innerHTML;
    }
    else if(tip)
    {
        tip.title =  tip.innerHTML;
    }
    $(tip).tipsy({gravity: 'w'});
}

先顯示普通標題,然后再顯示jQuery提示的方式。

這是一個已知的錯誤,將在下一版本中修復。 現在,請在此提交上使用“下載源”鏈接:

http://github.com/jaz303/tipsy/commit/88923af6ee0e18ac252dfc3034661674b7670a97

易用的插件似乎刪除了title屬性,並將其值分配給名為original-title的自定義屬性,以避免顯示默認的瀏覽器工具提示。 也許就您而言,這為時已晚:鼠標懸停在元素上,這將啟動本機瀏覽器工具提示。 然后,在元素上執行tipsy()並切換屬性名稱,但這為時已晚,因為本機工具提示的超時已經開始。

您可能應該阻止事件的默認操作,例如:

$('#new_div').bind('mousover', function (e) {
    tipsy(this);
    e.preventDefault();
});

編輯:由於這似乎沒有達到預期的效果,請在創建div之后tipsy($('#new_div'))調用tipsy($('#new_div'))並刪除mouseover處理程序。 無論如何,您一直在做的事情可能會有些問題: .tipsy( { gravity: 'w' } )插件可能使用mouseover事件,並且您在onmouseover事件處理程序中調用.tipsy( { gravity: 'w' } ) 如果您將鼠標移出然后再次移開,請反復進行。 那是很多不必要的事件分配。

你這樣做是錯的。 嘗試這個:

$('#new_div').tipsy();

jQuery設計為在JS代碼中使用選擇器。 請不要在HTML中發生任何事情。

另一種方法是使用“原始標題”屬性,而不是使用“標題”屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM