【问题标题】:Jquery refresh div but hold action on mouseoverJquery刷新div但在鼠标悬停时保持动作
【发布时间】:2014-03-31 11:12:43
【问题描述】:

大家好,

我一直在尝试使以下工作: ......包括来自www的jquery.js......这个脚本位于标题中

<script type="text/javascript">
    $("#latestChats").bind("mouseout", function() {
        refreshInterval = setInterval(function() {
            $("#latestChats").load('chatmessages.php');
        }, 1500);
    });

    $("#latestChats").bind("mouseover", function() {
        clearInterval(refreshInterval);
    });
</script>

我想不断刷新一个包含来自用户的聊天消息的 div,并且每当用户点击该 div 中的 youtube vid/views 内容(鼠标悬停)时,刷新就会停止。自动附加 jquery 将是最好的,但到目前为止我还没有能够弄清楚那部分...... 现在刷新和鼠标悬停工作......有什么想法吗?

【问题讨论】:

    标签: jquery append refresh mouseover


    【解决方案1】:

    看起来您的处理程序有点混乱,根据您对功能的描述,我希望立即设置 refreshInterval,而不是在鼠标悬停时设置,并且我会按照 jquery API 中的描述使用鼠标悬停:

    <script type="text/javascript">
    
        var refreshInterval;
    
            $(document).ready(function() {
                refreshInterval = setInterval(function() {
                    $("#latestChats").load('somedynamicpage.html');
                }, 1500);
    
                $("#latestChats").mouseover(function() {
                    clearInterval(refreshInterval);
                });
            });        
    </script>
    

    http://jsfiddle.net/QG354/(带有显示鼠标悬停被触发的警报)

    【讨论】:

    • 感谢您的回答,div 刷新现在完美运行,但鼠标悬停没有效果,它一直在刷新 :( 您的代码:var refreshInterval; $(function() {refreshInterval = setInterval(function( ) {$("#latestChats").load('chats_algemeen.php');}, 5000);}); $("#latestChats").mouseover(function() {clearInterval(refreshInterval);});
    • 嗯,如果你把 alert('triggered'); 放在 clearInterval(refreshInterval); 行之前,会触发警报吗?
    • 看起来它甚至没有执行该行。没有触发警报。我可以尝试删除 refr.interval 并只测试鼠标悬停
    • 该警报单独破坏了我的代码,tinymce 不会单独加载鼠标悬停。当保持不变时会加载(包括刷新)
    • 我在我的答案中编辑了代码 - 如果处理程序没有被触发,我认为它试图在元素加载之前设置处理程序,所以我把它放在$()
    猜你喜欢
    • 2011-11-26
    • 2011-02-06
    • 1970-01-01
    • 2011-10-01
    • 1970-01-01
    • 2012-05-04
    • 2012-08-12
    • 1970-01-01
    • 2013-11-26
    相关资源
    最近更新 更多