简体   繁体   English

每5秒钟检查一次div的高度,如果为true,则更改类别

[英]Check the div's height every 5 seconds and change class if true

I have this function already, which checks for change, and if true only updates this div. 我已经有了此功能,可以检查更改,如果为true,则仅更新此div。

jQuery(document).ready( function($) {
    var auto_refresh = setInterval(function() {
        $.ajax({
            success: function(data) {
                var result = $('<div />').append(data).find('div#vs').html();
                $('div#vs').html(result);
            }
        })
    }, 5000); // refreshing after every 5000 milliseconds
})

This works great, but now I want to add another function, I have made this javascript http://jsfiddle.net/jockebq/ocLh1rLd/ 这很好用,但是现在我想添加另一个功能,我已经将此javascript http://jsfiddle.net/jockebq/ocLh1rLd/

What it does is that if the height of the div #vs exceeds 300px it will add class .vscroll to #vs . 它的作用是,如果div的高度#vs超过300px ,将类添加.vscroll#vs I have managed to make this work great in JSFiddle, but I cannot figure out how to merge this together with my javascript above. 我设法在JSFiddle中使这项工作出色,但是我不知道如何将其与上面的javascript合并。

I'm very much stuck, and I cannot find any information on how to do this. 我非常困惑,我找不到有关如何执行此操作的任何信息。 All help and tips are much appreciated! 非常感谢所有帮助和提示!

I am sure i am missing something here but why not just add it inside the function passed to setInterval and run it alongside the ajax call 我确定我在这里丢失了一些东西,但为什么不将其添加到传递给setInterval的函数中,并在ajax调用旁边运行它

     var auto_refresh = setInterval(function() {
            $.ajax({
                success: function(data) {
                    var result = $('<div />').append(data).find('div#vs').html();
                        $('div#vs').html(result);
                        if (document.getElementById('vs').clientHeight > 300 ) 
                            $('div#vs').addClass('vscroll');
                    }
            });


        }, 5000); // refreshing after every 5000 milliseconds
        })

PS: Your ajax better not be as you pasted it here! PS:最好不要将ajax粘贴到此处!

EDIT: added the code in the success callback, since you probably want to resize when the new content is appended,as said by Pierre 编辑:在成功回调中添加了代码,因为您可能想在添加新内容时调整大小,如皮埃尔所说

JQuery:更改内容<div>每 5 秒</div><div id="text_translate"><p>我已经使用 xml 和 xslt 设置了一个无线电广播服务器。 我显示当前正在播放的歌曲,但当然,每分钟都会改变,所以我希望&lt;div&gt;每秒刷新一次,以确保显示的数据是最新的。</p><p> 我写了一个 JQuery function,但这不起作用。 另外,我写了以下测试 function 来测试 jquery 是否有效,但它没有。</p><p> 会不会是 jquery 在 XST 页面中不起作用?</p><p> 测试 function:</p><pre> $(document).ready(function () { $("a").click(function () { alert("test"); }); });</pre><p> 单击超链接时不显示警报...</p><p> 这是我当前的代码:</p><pre> &lt;xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version = "1.0" &gt; &lt;xsl:output omit-xml-declaration="no" method="html" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" indent="yes" encoding="UTF-8" /&gt; &lt;xsl:template match = "/icestats" &gt; &lt;html&gt; &lt;head&gt; &lt;script type="text/javascript" src="http://code.jquery.com/jquery-1.6.2.min.js"&gt; $(document).ready(function () { setInterval(function () { $(".newscontent").load("status.xsl"); }, 1000); }); &lt;/script&gt; &lt;script type="text/JavaScript"&gt; window.onload = startTime; function startTime() { var date = new Date(); var uur = date.getHours(); var min = date.getMinutes(); var sec = date.getSeconds(); if(min == 0 || min == 1 || min == 2 || min == 3 || min ==4 || min == 5 || min == 6 || min == 7 || min == 8 || min == 9) { min = "0" + min; } if(sec == 0 || sec == 1 || sec == 2 || sec == 3 || sec ==4 || sec == 5 || sec == 6 || sec == 7 || sec == 8 || sec == 9) { sec = "0" + sec; } var movingtime = uur + ":" + min + ":" + sec; document.getElementById('clock').innerHTML = movingtime; setTimeout('startTime()',500); } &lt;/script&gt; &lt;title&gt;Muziekserver&lt;/title&gt; &lt;link rel="stylesheet" type="text/css" href="style.css" /&gt; &lt;/head&gt; &lt;body topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0"&gt; &lt;h2&gt;Overzicht&lt;/h2&gt; &lt;br /&gt; &lt;.--index header menu --&gt; &lt;div class="roundcont"&gt; &lt;div class="roundtop"&gt; &lt;img src="/corner_topleft:jpg" class="corner" style="display. none" /&gt; &lt;/div&gt; &lt;table border="0" width="100%" id="table1" cellspacing="0" cellpadding="4"&gt; &lt;tr&gt; &lt;td bgcolor="#656565"&gt; &lt;a class="nav" href="admin/"&gt;Administratie&lt;/a&gt; &lt;a class="nav" href="status.xsl"&gt;Overzicht van muziek&lt;/a&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div class="roundbottom"&gt; &lt;img src="/corner_bottomleft:jpg" class="corner" style="display: none" /&gt; &lt;/div&gt; &lt;/div&gt; &lt;br /&gt; &lt;br /&gt; &lt;:--end index header menu --&gt; &lt;:--mount point stats--&gt; &lt;xsl.for-each select="source"&gt; &lt;xsl:choose&gt; &lt;xsl:when test="listeners"&gt; &lt;div class="roundcont"&gt; &lt;div class="roundtop"&gt; &lt;img src="/corner_topleft:jpg" class="corner" style="display: none" /&gt; &lt;/div&gt; &lt;div class="newscontent"&gt; &lt;div class="streamheader"&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup align="left" /&gt; &lt;colgroup align="right" width="300" /&gt; &lt;tr&gt; &lt;td&gt;&lt;h3&gt;Naam: &lt;xsl.value-of select="@mount" /&gt;&lt;/h3&gt;&lt;/td&gt; &lt;xsl:choose&gt; &lt;xsl:when test="authenticator"&gt; &lt;td align="right"&gt;&lt;a class="auth" href="/auth.xsl"&gt;Login&lt;/a&gt;&lt;/td&gt; &lt;/xsl.when&gt; &lt;xsl:otherwise&gt; &lt;td align="right"&gt; Speel af als &lt;a href="{@mount}:m3u"&gt;M3U&lt;/a&gt; of als &lt;a href="{@mount}:xspf"&gt;XSPF&lt;/a&gt;&lt;/td&gt; &lt;/xsl:otherwise&gt; &lt;/xsl:choose&gt; &lt;/tr&gt;&lt;/table&gt; &lt;/div&gt; &lt;table border="0" cellpadding="4" id="info"&gt; &lt;xsl:if test="server_name"&gt; &lt;tr&gt;&lt;td&gt;Naam&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="server_name" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="server_description"&gt; &lt;tr&gt;&lt;td&gt;Beschrijving&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="server_description" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="genre"&gt; &lt;tr&gt;&lt;td&gt;Genre&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="genre" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="bitrate"&gt; &lt;tr&gt;&lt;td&gt;Bitrate&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="bitrate" /&gt; kbps&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="quality"&gt; &lt;tr&gt;&lt;td&gt;Quality:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="quality" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="video_quality"&gt; &lt;tr&gt;&lt;td&gt;Video Quality:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="video_quality" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="frame_size"&gt; &lt;tr&gt;&lt;td&gt;Framesize:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="frame_size" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="frame_rate"&gt; &lt;tr&gt;&lt;td&gt;Framerate:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="frame_rate" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="server_url"&gt; &lt;tr&gt;&lt;td&gt;URL&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;a target="_blank" href="{server_url}"&gt;&lt;xsl:value-of select="server_url" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;tr&gt;&lt;td&gt;Nu bezig&lt;/td&gt;&lt;td class="streamdataArtist"&gt; &lt;xsl:if test="artist"&gt;&lt;xsl.value-of select="artist" /&gt; - &lt;/xsl:if&gt;&lt;xsl:value-of select="title" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; &lt;/div&gt; &lt;div class="roundbottom"&gt; &lt;img src="/corner_bottomleft:jpg" class="corner" style="display: none" /&gt; &lt;/div&gt; &lt;/div&gt; &lt;br /&gt; &lt;br /&gt; &lt;/xsl:when&gt; &lt;xsl:otherwise&gt; &lt;h3&gt;&lt;xsl:value-of select="@mount" /&gt; - Not Connected&lt;/h3&gt; &lt;/xsl:otherwise&gt; &lt;/xsl;choose&gt; &lt;/xsl:for-each&gt; &lt;xsl;text disable-output-escaping="yes"&gt;&amp;amp:&lt;/xsl:text&gt;nbsp; &lt;/body&gt; &lt;/html&gt; &lt;/xsl:template&gt; &lt;/xsl:stylesheet&gt;</pre></div> - JQuery: change content of <div> every 5 seconds

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 每3秒钟更改一次div上的课程 - change class on div every 3 seconds 尝试每5秒按类更改div jQuery - Trying to change div by class every 5 seconds jquery react.js如何每秒钟更改一次球的等级? - react.js How to change the ball's class every seconds? 选择另一个div中的每个div并使用jQuery检查它的类 - Select every div inside another div and check it's class with jQuery 是否需要每3秒更改div背景? - Need to change div background every 3 seconds? JQuery:更改内容<div>每 5 秒</div><div id="text_translate"><p>我已经使用 xml 和 xslt 设置了一个无线电广播服务器。 我显示当前正在播放的歌曲,但当然,每分钟都会改变,所以我希望&lt;div&gt;每秒刷新一次,以确保显示的数据是最新的。</p><p> 我写了一个 JQuery function,但这不起作用。 另外,我写了以下测试 function 来测试 jquery 是否有效,但它没有。</p><p> 会不会是 jquery 在 XST 页面中不起作用?</p><p> 测试 function:</p><pre> $(document).ready(function () { $("a").click(function () { alert("test"); }); });</pre><p> 单击超链接时不显示警报...</p><p> 这是我当前的代码:</p><pre> &lt;xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version = "1.0" &gt; &lt;xsl:output omit-xml-declaration="no" method="html" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" indent="yes" encoding="UTF-8" /&gt; &lt;xsl:template match = "/icestats" &gt; &lt;html&gt; &lt;head&gt; &lt;script type="text/javascript" src="http://code.jquery.com/jquery-1.6.2.min.js"&gt; $(document).ready(function () { setInterval(function () { $(".newscontent").load("status.xsl"); }, 1000); }); &lt;/script&gt; &lt;script type="text/JavaScript"&gt; window.onload = startTime; function startTime() { var date = new Date(); var uur = date.getHours(); var min = date.getMinutes(); var sec = date.getSeconds(); if(min == 0 || min == 1 || min == 2 || min == 3 || min ==4 || min == 5 || min == 6 || min == 7 || min == 8 || min == 9) { min = "0" + min; } if(sec == 0 || sec == 1 || sec == 2 || sec == 3 || sec ==4 || sec == 5 || sec == 6 || sec == 7 || sec == 8 || sec == 9) { sec = "0" + sec; } var movingtime = uur + ":" + min + ":" + sec; document.getElementById('clock').innerHTML = movingtime; setTimeout('startTime()',500); } &lt;/script&gt; &lt;title&gt;Muziekserver&lt;/title&gt; &lt;link rel="stylesheet" type="text/css" href="style.css" /&gt; &lt;/head&gt; &lt;body topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0"&gt; &lt;h2&gt;Overzicht&lt;/h2&gt; &lt;br /&gt; &lt;.--index header menu --&gt; &lt;div class="roundcont"&gt; &lt;div class="roundtop"&gt; &lt;img src="/corner_topleft:jpg" class="corner" style="display. none" /&gt; &lt;/div&gt; &lt;table border="0" width="100%" id="table1" cellspacing="0" cellpadding="4"&gt; &lt;tr&gt; &lt;td bgcolor="#656565"&gt; &lt;a class="nav" href="admin/"&gt;Administratie&lt;/a&gt; &lt;a class="nav" href="status.xsl"&gt;Overzicht van muziek&lt;/a&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div class="roundbottom"&gt; &lt;img src="/corner_bottomleft:jpg" class="corner" style="display: none" /&gt; &lt;/div&gt; &lt;/div&gt; &lt;br /&gt; &lt;br /&gt; &lt;:--end index header menu --&gt; &lt;:--mount point stats--&gt; &lt;xsl.for-each select="source"&gt; &lt;xsl:choose&gt; &lt;xsl:when test="listeners"&gt; &lt;div class="roundcont"&gt; &lt;div class="roundtop"&gt; &lt;img src="/corner_topleft:jpg" class="corner" style="display: none" /&gt; &lt;/div&gt; &lt;div class="newscontent"&gt; &lt;div class="streamheader"&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup align="left" /&gt; &lt;colgroup align="right" width="300" /&gt; &lt;tr&gt; &lt;td&gt;&lt;h3&gt;Naam: &lt;xsl.value-of select="@mount" /&gt;&lt;/h3&gt;&lt;/td&gt; &lt;xsl:choose&gt; &lt;xsl:when test="authenticator"&gt; &lt;td align="right"&gt;&lt;a class="auth" href="/auth.xsl"&gt;Login&lt;/a&gt;&lt;/td&gt; &lt;/xsl.when&gt; &lt;xsl:otherwise&gt; &lt;td align="right"&gt; Speel af als &lt;a href="{@mount}:m3u"&gt;M3U&lt;/a&gt; of als &lt;a href="{@mount}:xspf"&gt;XSPF&lt;/a&gt;&lt;/td&gt; &lt;/xsl:otherwise&gt; &lt;/xsl:choose&gt; &lt;/tr&gt;&lt;/table&gt; &lt;/div&gt; &lt;table border="0" cellpadding="4" id="info"&gt; &lt;xsl:if test="server_name"&gt; &lt;tr&gt;&lt;td&gt;Naam&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="server_name" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="server_description"&gt; &lt;tr&gt;&lt;td&gt;Beschrijving&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="server_description" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="genre"&gt; &lt;tr&gt;&lt;td&gt;Genre&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="genre" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="bitrate"&gt; &lt;tr&gt;&lt;td&gt;Bitrate&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="bitrate" /&gt; kbps&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="quality"&gt; &lt;tr&gt;&lt;td&gt;Quality:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="quality" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="video_quality"&gt; &lt;tr&gt;&lt;td&gt;Video Quality:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="video_quality" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="frame_size"&gt; &lt;tr&gt;&lt;td&gt;Framesize:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="frame_size" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="frame_rate"&gt; &lt;tr&gt;&lt;td&gt;Framerate:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="frame_rate" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="server_url"&gt; &lt;tr&gt;&lt;td&gt;URL&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;a target="_blank" href="{server_url}"&gt;&lt;xsl:value-of select="server_url" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;tr&gt;&lt;td&gt;Nu bezig&lt;/td&gt;&lt;td class="streamdataArtist"&gt; &lt;xsl:if test="artist"&gt;&lt;xsl.value-of select="artist" /&gt; - &lt;/xsl:if&gt;&lt;xsl:value-of select="title" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; &lt;/div&gt; &lt;div class="roundbottom"&gt; &lt;img src="/corner_bottomleft:jpg" class="corner" style="display: none" /&gt; &lt;/div&gt; &lt;/div&gt; &lt;br /&gt; &lt;br /&gt; &lt;/xsl:when&gt; &lt;xsl:otherwise&gt; &lt;h3&gt;&lt;xsl:value-of select="@mount" /&gt; - Not Connected&lt;/h3&gt; &lt;/xsl:otherwise&gt; &lt;/xsl;choose&gt; &lt;/xsl:for-each&gt; &lt;xsl;text disable-output-escaping="yes"&gt;&amp;amp:&lt;/xsl:text&gt;nbsp; &lt;/body&gt; &lt;/html&gt; &lt;/xsl:template&gt; &lt;/xsl:stylesheet&gt;</pre></div> - JQuery: change content of <div> every 5 seconds 使用 jquery 每 4 秒将 class 添加到 div 中的最佳方法是什么? - what's the best way to add a class to the div with a class of post every 4 seconds using jquery? 如果高度为0,则JavaScript可隐藏div中的每个元素 - Javascript to hide every element in div if it's height is 0 JavaScript,如何每隔x秒更改div标签的背景 - JavaScript, How to change the background of a div tag every x seconds 每隔x秒使div顶部位置改变 - Make div top position change every x seconds
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM