在jQuery自动刷新div中使用jQuery工具提示

时间:2011-11-14 23:14:49

标签: php javascript jquery tooltip tipsy

我在使用jQuery工具提示(使用Tipsy)工作时遇到问题。工具提示在常规页面上工作正常,但我实际上需要通过PHP包含的页面上的工具提示。我之所以包含该页面,是因为我还使用jQuery每x毫秒自动刷新包含页面。

这种自动刷新机制似乎使工具提示无法正常运行。当我删除该机制时,会出现工具提示,但页面的这一部分显然不再以一定间隔重新加载。我正在寻找一种让Tipsy工作的方法,同时确保我所包含的页面能够自我更新。

我的页面如下:

<div id="vardisplay">
    <?php include("vardisplay.php"); ?>
</div>

然后我使用以下脚本刷新“vardisplay”DIV,导致我重新加载包含的页面:

<script>
$(document).ready(function() {
    $('#vardisplay').load('editarticle.php?bid=<?php echo $bnummer ?> #vardisplay');
    var refreshId = setInterval(function() {
        $('#vardisplay').load('editarticle.php?bid=<?php echo $bnummer ?> #vardisplay')}, 750);
   $.ajaxSetup({ cache: false });
});
</script>

我想要一个Tipsy工具提示(在我的包含页面内)的对象可能是这样的:

<div id="TipsyMe" title="I got tipsied">
     <p>Testpiece</p>
</div>

我正在尝试通过将此脚本放在该页面上来实现该特定工具提示,该页面应该在Tipsy工具提示中显示“我得到了精辟”:

<script>
$(function() {
        $("#TipsyMe").tipsy({gravity: 's'});
    });
</script>

最终显示的是常规浏览器工具提示,其中jQuery被完全忽略。再次,当我删除主页上的自动刷新机制时,它工作正常。

我现在傻眼了。在过去的几个小时里,我一直在谷歌搜索,没有任何结果。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

在醉意的文档中,您可以偶然发现一个名为“live”的选项

$(function() {
    $("#TipsyMe").tipsy({
        gravity: 's',
        live: true
    });
});

应该这样做。 (因为你看起来很新,接受回答会吸引人们为你未来的回答暗示暗示提示:P)

小心:“实时工具提示不支持手动触发。” (来自文档)

编辑:没有正确看到您的代码:

$(function() {
    $("div.someTotal").tipsy({
        gravity: 's',
        live: true,
        title: "I got tipsied"
    });
});

“someTotal”是您拥有编辑和删除图标的所有“框”的类。如果你还没有这样的课,你可以创建一个(你可以通过实例命名为tipy)并使用它($("div.tipsy").tipsy({...