1

例如,我在 index.html 中有一些链接:

<a href="message.html">Go to message page</a>

在另一页 iframe.html 我有一个 iframe:

<iframe id="iframe" src="profile.html" frameborder="0" scrolling="no"></iframe>

是否可以这样做,当我单击“转到消息页面”链接时,它会将我重定向到 iframe.html 并将 iframe src 更改为 message.html?

4

5 回答 5

2

一个简单的解决方案:

您的链接index.html应如下所示:

<a href="iframe.html?message.html">Go to message page</a>

iframe.html做这样的事情:

$(function () {
    var url = window.location.href;
    var QueryStr = url.split('?')[1];    
    $('#iframe').attr('src', QueryStr);
});

希望这将是你的答案。谢谢!

看演示

见页面:

于 2012-09-06T06:42:47.620 回答
1

像这样在查询字符串中发送您的目标页面

  $('a[href="message.html"]').click(function (e) {
        e.preventDefault()
        window.location = 'iframe.html?src="message.html"';
  })

在 iframe.html 上执行此操作

$(function () {
    $('#iframe').attr('src', getParameterByName('src'));
});

function getParameterByName(name)
{
  name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
  var regexS = "[\\?&]" + name + "=([^&#]*)";
  var regex = new RegExp(regexS);
  var results = regex.exec(window.location.search);
  if(results == null)
    return "";
  else
    return decodeURIComponent(results[1].replace(/\+/g, " "));
}
于 2012-09-06T06:18:14.320 回答
0

假设你有一个 id = iframeid 的 iframe,那么

document.getElementById("iframeid").src = "new/address/here";
于 2012-09-06T06:12:57.467 回答
0

如果您真的想在客户端进行重定向..

在你的message.html文件中,把这个:

<script type="text/javascript">
 window.location = "iframe.html"
</script>

然后添加您的iframe.html

document.getElementById("iframe").src = "message.html";

没有测试过,但是你说的步骤可能会导致重定向无限循环。

于 2012-09-06T06:24:02.473 回答
0

你可以像这样改变你的链接标签

<a href="iframe.html?ifsrc=message.html">Go to message page</a> 

并在 iframe.html 页面 onload functin 中编写此脚本

//---------------- within head tag----------of iframe.html--------
    function GET() {
       var data = [];
        for(x = 0; x < arguments.length; ++x)
                data.push(location.href.match(new RegExp("/\?".concat(arguments[x],"=","([^\n&]*)")))[1])
                return data;
        }

        //--- on iframe.html onload function
    function iframeOnload(){

    document.getElementById("iframe").src =  GET("id")[0];

    }

//---------------- within head tag----------of iframe.html--------
于 2012-09-06T07:35:19.680 回答