这是一个例子
父.html
<script>
function printWhoCalledMe() {
console.log(???); // what goes here that will identify the caller?
}
<iframe src="iframe1.html"></iframe>
<iframe src="iframe2.html"></iframe>
iframe1.html
<script>
window.parent.printWhoCalledMe();
</script>
iframe2.html
<script>
window.parent.printWhoCalledMe();
</script>
更大的问题是,我有一个测试工具,它在 iframe 中一次运行一堆测试。每个测试调用window.parent.reportOnTest(success)
我正在研究通过在超过 1 个 iframe 中运行测试来并行化测试,但我必须通过每个测试,目前是 1000 个测试,并将它们的调用从window.parent.reportOnTest(success)
类似window.parent.reportOnTest(success, window.location.href)
或类似的东西更改。
我想知道是否有办法在不修改测试的情况下找出哪个测试正在调用父级。
注意:我试过
function printWhoCalledMe() {
console.log(window.location.href);
}
但这是打印父母的href。