是否有人知道我们如何访问iFrame信息(右键单击浏览器中的iFrame - >此框架 - >查看框架信息)如何通过javascript获取iFrame信息(引用url)?
主要我想获取推荐网址。
我能够contentDocument.location.href
获得地址,但我不能让其他属性(类型,渲染模式,引用URL,...)。
顺便说一下,document.referrer不是我正在寻找的东西。
请尽快帮到
是否有人知道我们如何访问iFrame信息(右键单击浏览器中的iFrame - >此框架 - >查看框架信息)如何通过javascript获取iFrame信息(引用url)?
主要我想获取推荐网址。
我能够contentDocument.location.href
获得地址,但我不能让其他属性(类型,渲染模式,引用URL,...)。
顺便说一下,document.referrer不是我正在寻找的东西。
请尽快帮到
主页和iframe是否位于同一个域?由于“跨帧通信”在所有现代浏览器中受到严格限制,我认为没有办法完成这一点。
我没有写这一点,不记得它是从哪里来的,但它的死非常有用,这是一个片段,我始终保持周围:
function parseUri(str) {
var o = parseUri.options,
m = o.parser[o.strictMode ? "strict" : "loose"].exec(str),
uri = {},
i = 14;
while (i--) uri[o.key[i]] = m[i] || "";
uri[o.q.name] = {};
uri[o.key[12]].replace(o.q.parser, function ($0, $1, $2) {
if ($1) uri[o.q.name][$1] = $2;
});
return uri;
};
parseUri.options = {
strictMode: false,
key: ["source", "protocol", "authority", "userInfo", "user", "password", "host", "port", "relative", "path", "directory", "file", "query", "anchor"],
q: {
name: "queryKey",
parser: /(?:^|&)([^&=]*)=?([^&]*)/g
},
parser: {
strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)[email protected])?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
loose: /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)[email protected])?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/
}
};
然后使用它是这样的:
parseUri(document.referrer).host //<-- gets host name
不,他们是在不同的域 – user1855017