我想访问当前加载的 iframe 文档并将该文档链接到另一个 iframe,为此我尝试了:
$("#if1").attr("src", $("#if2").attr("src"));
但这会再次加载文档。我想访问已经加载的文档#if1
。我怎样才能做到这一点?
我想访问当前加载的 iframe 文档并将该文档链接到另一个 iframe,为此我尝试了:
$("#if1").attr("src", $("#if2").attr("src"));
但这会再次加载文档。我想访问已经加载的文档#if1
。我怎样才能做到这一点?
$("#if1").attr("src", $("#if2").attr("src"));
但这会再次加载文档。
呃,是的,这就是你正在做的事情:你正在将 'src 设置if1
为if2
's src。这就是它重新加载 iFrame 的原因...如果您在代码中交换 if1 和 if2 ,它可能会做您想做的事情——如果我能理解您的话。
看看这个正在运行的演示:http: //jsfiddle.net/aymansafadi/BanTV/5/show/
您可能感兴趣的关键部分是:
$('#swap').on('click', function() {
var iframe1 = $('#if1')[0].contentWindow.location.href;
var iframe2 = $('#if2')[0].contentWindow.location.href;
$('#if1')[0].contentWindow.location.href = iframe2;
$('#if2')[0].contentWindow.location.href = iframe1;
});
注意:只有当两个 iframe 与父窗口在同一个域下时,这以及您尝试的任何其他操作都将起作用。
您也可以使用.src('attr')
设置URL,但不获取当前 URL。
演示:http: //jsfiddle.net/aymansafadi/BanTV/7/show/
$('#swap').on('click', function() {
var iframe1 = $('#if1')[0].contentWindow.location.href;
var iframe2 = $('#if2')[0].contentWindow.location.href;
$('#if1').attr('src', iframe2);
$('#if2').attr('src', iframe1);
});