假设我的HTML页面中有一个iframe

<html>
<body>
This is my page
<button> Button </button>
<iframe src="www.example.com"></iframe>
</body>
</html>

因此,用户可以在iframe中点击页面www.example.com上的链接。是否可以使用JavaScript跟踪用户导航到的链接,然后在用户单击Button时将这些链接发送到我的服务器?

最佳答案

您将无法从托管iFrame的页面跟踪iFrame中的事件。您可能会从iFramed页面内部跟踪导航,然后使用window.postMessage将URL信息发送到父页面。这将需要您控制iFrame中的页面,并且您将只能跟踪您控制的页面上的点击以及正确设置的点击,以便将后消息发送给父页面。

您可以阅读有关[window.postMessage] following this link的更多信息。需要注意的是,某些较旧的浏览器(IE7)不支持postMessage,因此您可以使用像Window postMessage plugin这样的库,该库对这些浏览器使用window.location.hash轮询。我以前使用过该库,并已成功使用它。

10-07 19:35
查看更多