2

我有一个模块化网页,每个模块都是可以与父页面交互的 iframe。特别是 iframe 向父级添加新元素(导航、选项卡等)。所有页面都在同一个域中。

到目前为止,我一直在 iframe 中使用这种模式:

var newDiv=document.createElement("div");
// do stuff with newDiv
parent.document.body.appendChild(newDiv);

我最近突然想到,因为 newDiv 将附加到父级,所以这样做更有意义:

var newDiv=parent.document.createElement("div");
// do stuff with newDiv
parent.document.body.appendChild(newDiv);

我的问题:新元素是用 document.createElement 还是 parent.document.createElement 创建的有什么区别吗?

4

1 回答 1

0

这行得通吗?如果是这样,那么我认为(不是 100% 肯定)两者都是相同的,因为createElement它是一个DOM方法和一个document对象的成员,并且您可以同时访问两个文档(两个对象)并且都包含相同的成员函数(createElement 在两者),在这种情况下,一个在 the 中iframe,另一个在它的父级中。因此,看起来您正在从一个来源而不是另一个来源IMO调用方法。

就像我说的,这只是一个意见,所以等待专家的更多答案。

于 2012-12-07T23:38:51.127 回答