获取给定URL的iframe DOM元素

Get an iframe DOM element given its URL

本文关键字:iframe DOM 元素 URL 获取      更新时间:2023-09-26

我正在使用w3c资源定时API。window.performance.getEntriesByType("资源");这给出了包括iframe在内的资源列表。然而,为了掌握嵌入iframe的资源,我需要掌握iframe的性能对象,这需要我拥有对其DOM节点/元素的引用。

        var myiframe2 = $("#myiframe2");
        var myiframeContentWindow = myiframe2[0].contentWindow;
        var iframeContentPerf = myiframeContentWindow.performance;

问题是,如何获得iframe的节点引用,如果我所知道的是iframe的URL,这是我所知道的(我将不知道iframe的id或名称不像上面的代码示例)。

除了遍历文档的元素,然后过滤iframe并将iframe的URL与资源计时API返回的内容进行比较之外,是否有一种简单的方法来获取iframe的DOM节点(给定iframe的URL) ?

如果iframe的URL没有改变,您可以尝试使用确切的URL直接使用CSS选择器获取它:

document.querySelector('iframe[src="http://example.org"]');

如果URL会改变,但是每个iframe都有一个独特的部分(可以识别特定的iframe):

document.querySelector('iframe[src*="example.org/some/url"]');