0

我有一个带有 iframe 的页面,该页面在列表中输出第 3 方内容

每个内容项都在一个li具有唯一性的类中item-X

<li class="item-1">
   <a href="item-1.html">View Item 1</a>
</li>
<li class="item-2">
   <a href="item-2.html">View Item 2</a>
</li>

我正在寻找一种方法:

用户访问

www.parent-domain.com/?view_item=1

iframe 读取这个地址,并clickitem被引用时模拟一个。

iframe 中的内容使用onLoad('parent-domain.com/foo.html)加载代理 HTML 文件,我可以在其中添加 JS。(大概这是为了绕过同源策略)。

这甚至可能吗?

  • 从父 URL 获取查询字符串
  • 从 iframe 读取值(在里面的文件里面onLoad();
  • li a在与值匹配的类上触发点击事件
4

1 回答 1

0

我建议您将父母查询字符串传递给 iframe(使用服务器端代码等)。

然后,您可以轻松地从查询字符串中检索“view_item”:

function getParameterByName(name) {
name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
    results = regex.exec(location.search);
return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}

然后你只需找到带有 id 的链接并触发点击:

var link = document.getElementbyId(getParameterByName("view_item"));
link.click();
于 2013-10-14T11:32:03.323 回答