我有一个页面(让我们称之为主页面),其中两个IFrame显示相同的页面(让我们称之为子页面)。
如果我在我的子页面的javascript代码中写了console.log('hello')
,当我加载主页面时,我会在控制台中获得两条相同的消息hello
。
有没有办法区分日志来自哪个IFrame?或者,换句话说,我怎样才能理解日志来自哪两个IFrame?
答案 0 :(得分:2)
您可以通过在网址中添加哈希来区分它们,例如:
<iframe src="child.html#iframe-1"></iframe>
<iframe src="child.html#iframe-2"></iframe>
然后,在您的子页面中,覆盖console.log
函数,以便将该哈希添加为前缀:
if(window.console && console.log){
var old = console.log;
console.log = function(){
Array.prototype.unshift.call(arguments, window.location.hash + ': ');
old.apply(this, arguments)
}
}
console.log('hi'); // Will output '#iframe-X: hi'
覆盖控制台的代码来自Arun P Johny。
答案 1 :(得分:0)
您可以尝试在控制台语句中包含这样的位置:
console.log(window.location.pathname, 'hello');