我有一个带iframe的html页面,想要使用src属性切换内容。 iframe内容可能包含JQuery和Angular。如果我更改了src属性,那么在加载新的iframe内容之前iframe中的DOM事件(JQuery和Angular资源)是否已清除?
答案 0 :(得分:2)
是。 iframe窗口的整个环境将被擦除,并替换为新页面的新窗口。这包括JavaScript环境及其中的所有内容 - 全局变量,声明的函数,加载的脚本等 - 以及完整的DOM结构,以及任何事件处理程序。
答案 1 :(得分:1)
如果通过" DOM Events"你的意思是DOM事件处理程序,然后肯定它们被清除。
DOM事件处理程序附加到特定的DOM元素。当替换这些DOM元素时,所有事件处理程序也将消失。并且,设置iframe的.src
将替换iframe中的所有DOM元素,因此所有先前的事件处理程序也将消失。
实际上,替换iframe的.src
本质上是加载一个全新的页面,因此整个Javascript上下文被替换并重新构建。上一页中没有任何内容存活下来。
答案 2 :(得分:0)
是的,这些事件会被清除,因为当您更改src
iframe
时,iframe会加载该网址内容&创建一个新的window
/ document
,它不具有最初绑定的事件。基本上它就像新鲜的DOM。