【问题标题】:An Iframe I need to refresh every 30 seconds (but not the whole page)我需要每 30 秒刷新一次的 iframe(但不是整个页面)
【发布时间】:2011-07-06 00:45:13
【问题描述】:

我有这段代码

<iframe marginwidth="0" marginheight="0" width="240" height="80" scrolling="no" frameborder=0 src="irc_online.php">
</iframe>

我将此添加到侧边栏上的 html 小部件中,有没有办法让我每 30 秒刷新一次,而不是页面的其余部分?

【问题讨论】:

    标签: iframe refresh


    【解决方案1】:

    您可以在 irc_online.php 中放置一个元刷新标签

    <meta http-equiv="refresh" content="30">
    

    或者您可以使用带有 setInterval 的 Javascript 来刷新 Source 的 src...

    <script>
    window.setInterval("reloadIFrame();", 30000);
    
    function reloadIFrame() {
     document.frames["frameNameHere"].location.reload();
    }
    </script>
    

    【讨论】:

    • 我做错了吗,因为它不起作用(抱歉,我似乎无法在此回复中添加代码框)[code] [/code]
    • 是的,您的 (名称属性)
    • 这对我不起作用。这就是我所拥有的 -
    • 这在我当前的项目中非常完美。我有一个元刷新,完成后会进行下载,几秒钟后我需要另一个重定向,以将成员发送回他们所在的页面。我也更改了 document.frames // window.parent.location = "URL STRING HERE" 感谢 ahmet2106
    【解决方案2】:

    假设您的 iframe id= myIframe

    代码如下:

    <script>
    window.setInterval("reloadIFrame();", 30000);
    function reloadIFrame() {
     document.getElementById("myIframe").src="YOUR_PAGE_URL_HERE";
    }
    </script>
    

    【讨论】:

      【解决方案3】:

      好的...所以我知道我正在回答一个十年的问题,但想添加一些东西! 我想添加一个带有特殊 iframe 参数的谷歌日历。问题是没有它日历就无法工作。 30 秒对我来说有点短,所以我在自己的文件中将其更改为 15 分钟 这对我有用。

      <script>
      window.setInterval("reloadIFrame();", 30000);
      function reloadIFrame() {
       document.getElementById("calendar").src=calendar.src;
      }
      </script>
      
          <iframe id="calendar" src="[URL]" style="border-width:0" width=100% height=100% frameborder="0" scrolling="no"></iframe>
      

      【讨论】:

        【解决方案4】:

        我有一个更简单的解决方案。在您的目标页面 (irc_online.php) 的标题中添加一个自动刷新标签。

        【讨论】:

          【解决方案5】:

          将“id='myiframe'”添加到 iframe,然后使用此脚本:

          <script>
          
          function f1()
          {
           var x=document.getElementById("myiframe");
             x.src=x.src+Math.floor(random()%100000);
          }
          
          setInterval(f1,30*1000);
          
          </script>
          

          【讨论】:

          • 我会把这个函数 f1() { var x=document.getElementById("myiframe"); x.src=x.src+Math.floor(随机()%100000); } setInterval(f1,30*1000);它只是显示在我的页面上谢谢
          猜你喜欢
          • 2012-06-13
          • 1970-01-01
          • 2023-04-11
          • 1970-01-01
          • 1970-01-01
          • 2014-03-23
          • 2017-11-08
          • 1970-01-01
          • 2013-08-26
          相关资源
          最近更新 更多