温馨提示:本文翻译自stackoverflow.com,查看原文请点击:javascript - How to get the origin of iframe object
html iframe javascript jquery

javascript - 如何获取iframe对象的原点

发布于 2020-04-12 10:18:15

我需要获取iframe的来源。到目前为止,我们使用的代码创建了一个anchor元素并读取了它的起源,但是此属性在Internet Explorer中不可用。从iframe对象获取原点的最优雅方法是什么?

这是旧的代码:

function getOrigin(href) {
  var l = document.createElement("a");
  l.href = href;
  return l.origin;
};

var x = document.getElementById("my-iframe");
alert(getOrigin(x.src));

但是正如我所说,Internet Explorer不支持origin属性。

我需要支持Internet Explorer 10及更高版本。

查看更多

提问者
Nick Russler
被浏览
33
smnbbrv 2015-09-04 18:19

好吧,创建只解析字符串的元素是很脏的。

为什么不自己解析呢?

'http://stackoverflow.com:8080/123?param=test'.match(/^.+\:\/\/[^\/]+\//)[0]

如果您还想支持相对URL(例如'/ myurl'),只需添加一些条件即可采用当前窗口的URL:

location.href.match...