【问题标题】:i want to get url from iframe [duplicate]我想从 iframe 获取 url [重复]
【发布时间】:2012-08-17 15:20:28
【问题描述】:

这是我正在使用的代码......

我想从下面的代码中获取 current url(href) ......

<html>
<head>
<script type="text/javascript">
        function load() {
            var url =  document.getElementById("iframeid");  

          //get the ifram onload url of href 
    //(i.e)   http://www.image.com/home.html     

        }
    </script>
</head>
<body>
<iframe onload="load()" name="Google"  id="iframeid"  scrolling="auto" style="width:95%;height:600px" src="http://www.image.com" >

    </iframe>
</body>
</html>

【问题讨论】:

  • 还要注意“访问跨域框架”错误。

标签: javascript


【解决方案1】:

这只有在它们位于相同的域、协议和端口时才有效:

document.getElementById("iframe_id").contentWindow.location.href

其他用途:

document.getElementById("iframe_id").src

【讨论】:

  • 我有未定义的结果与此代码
  • document.getElementById("iframe_id").src 将始终返回初始 uri.. 所以不建议使用它。
  • 注意:Changing origin 是可能的,但仅限于子域访问。
【解决方案2】:

The demo.

<html>
<head>
<script type="text/javascript">
        function load(frame) {
            console.log(frame.src);
        }
</script>
</head>
<body>
<iframe onload="load(this)" name="Google"  id="iframeid"  scrolling="auto" style="width:95%;height:600px" src="http://www.image.com" >
</iframe>
</body>
</html>

【讨论】:

  • 我有未定义的...alert(console.log(frame.src))
  • 我已经尝试了 alert(frame.src) 它给出了image.com 我想要导航菜单网址
  • @suryaguruprakash 菜单在哪里?
  • iframe 中的菜单,当 iframe 加载时,检测加载和警报以及当前 url
  • @suryaguruprakash 它有id 吗?
【解决方案3】:

试试这个:

document.getElementById("iframeid").src;

【讨论】:

    【解决方案4】:

    试试这个。有时您无法访问 iframe 网址

    var CurrentUrl = document.getElementById('MyIFrame').contentWindow. location.href;
    

    【讨论】:

      【解决方案5】:

      只有两个缺失的位(用

      <html>
      <head>
      <script type="text/javascript">
              function load() {
                  var url =  document.getElementById("iframeid").src; // <== .src
      
                  //get the ifram onload url of href 
                  //(i.e)   http://www.image.com/home.html     
      
              }
          </script>
      </head>
      <body>
      <iframe onload="load()" name="Google"  id="iframeid"  scrolling="auto" style="width:95%;height:600px" src="http://www.image.com" > // <== Opening angle bracket
      
          </iframe>
      </body>
      </html>
      

      【讨论】:

        猜你喜欢
        • 2020-01-30
        • 2012-06-22
        • 2012-06-19
        • 1970-01-01
        • 2011-04-30
        • 2013-02-24
        • 2010-10-30
        • 1970-01-01
        相关资源
        最近更新 更多