用于iframe jquery或javascript的刷新按钮

时间:2010-09-09 17:10:02

标签: javascript jquery

您好我有问题。我有一个页面,其中我有一个iframe。在父页面(不在iframe中),我想构建浏览器按钮back,fw,refresh和home page。 后面,fw,主页按钮几乎没问题。刷新按钮不起作用。 代码如下:

<a href="javascript:;" onClick="parent.document.getElementById('my_frame').location.reload();">

我还必须告诉我,我的网址没有改变,我的意思是我使用了post方法,网址总是一样的。 任何jquery或javascript的答案???

非常感谢,我非常绝望

4 个答案:

答案 0 :(得分:3)

好的,我们首先介绍一些基本规则

  1. 要访问框架的window对象,请浏览frames集合。
  2. 为您的框架name
  3. 如果您的部分用户界面在没有启用javascript的情况下无效,请不要将它们放入标记中 - 使用javascript添加它们
  4. 不要将锚元素用于非超链接的控件
  5. 在实践中:

    <html>
    <head>
      <title>Test Page</title>
    
      <style type="text/css">
        #toolbar button {
          cursor: pointer;  
        }
      </style>
    
      <script src="http://code.jquery.com/jquery-latest.js"></script>
      <script type="text/javascript">  
    
      $(function()
      {
        var $iframe  = $( '#my_frame' );
        var $toolbar = $( '<div/>' ).attr( 'id', 'toolbar' );
        var frame    = self.frames['my_frame'];
    
        $toolbar.append(
          $('<button/>')
          .text( 'Home' )
          .click( function( event )
          {
            event.preventDefault();
            frame.location.href = 'http://www.google.com';
          } )
        );
    
        $toolbar.append(
          $('<button/>')
          .text( 'Back' )
          .click( function( event )
          {
            event.preventDefault();
            history.back();
          } )
        );
    
        $toolbar.append(
          $('<button/>')
          .text( 'Forward' )
          .click( function( event )
          {
            event.preventDefault();
            frame.history.forward();
          } )
        );
    
        $toolbar.append(
          $('<button/>')
          .text( 'Refresh' )
          .click( function( event )
          {
            event.preventDefault();
            frame.location.reload();
          } )
        );
    
        $toolbar.insertBefore( $iframe );
    
      } );
    
      </script>
    </head>
    
    <body>
    
      <iframe id="my_frame" name="my_frame" width="400" height="300" src="http://www.google.com"></iframe>
    
    </body>
    </html>
    

答案 1 :(得分:0)

你试过这个: http://www.byronsorrells.com/web-development/reloading-an-iframe-with-jquery/

$(".reloadAds").click(function() {
        jQuery.each($("iframe"), function() {
            $(this).attr({
                src: $(this).attr("src")
            });
        });
        return false;
    });

答案 2 :(得分:0)

你为什么不这样做:

<a href="javascript:document.getElementById('my_frame').location.reload();">

如果您已经拥有onclick而没有其他目标,则不需要href

答案 3 :(得分:0)

尝试以下方法:

var iframe = document.getElementById('your-iframe');
iframe.src = iframe.src;