Tipsy jquery plugin已安装在我的应用中

这在我的加载功能中

 $(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提示的方式。

最佳答案

易用的插件似乎删除了title属性,并将其值分配给名为original-title的自定义属性,以避免显示默认的浏览器工具提示。也许就您而言,这为时已晚:鼠标悬停在元素上,这将启动本机浏览器工具提示。然后,在元素上执行tipsy()并切换属性名称,但这为时已晚,因为本机工具提示的超时已经开始。

您可能应该阻止事件的默认操作,例如:

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


编辑:由于这似乎没有达到预期的效果,请在创建div后立即调用tipsy($('#new_div'))并删除mouseover处理程序。无论如何,您一直在做的事情可能会有些问题:易用的插件可能使用mouseover事件,并且您在.tipsy( { gravity: 'w' } )事件处理程序中调用onmouseover。如果您将鼠标移出然后再次移开,请反复进行。那是很多不必要的事件分配。

关于javascript - jQuery Tipsy插件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2227361/

10-10 07:48