有什么办法阻止特定的HTML元素被创建到IFrame中?阻止iframe中的任意元素
我没有使用JQuery,但我不介意使用它。
我的基本代码如下:
<iframe id="id_frame_01" src="somepage"></iframe>
<script type="text/javascript>
frame = document.getElementById('id_frame_01').contentWindow.document;
frame.onload = function(){
var toremove = frame.getElementsByTagName('iframe');
toremove.outerHTML = '';
toremove = frame.getElementsByTagName('object');
toremove.outerHTML = '';
}
</script>
我已经完全进入iframe的内容,但如果我尝试onload事件后手动删除的元素,onload事件是路太远, (示例)YouTube视频开始播放。
我知道要删除的元素的ID,但我不喜欢使用它们,因为网站“更新”可能会破坏系统。相反,我更喜欢按元素类型进行过滤。
这是一个浏览器专用页面,仅限Chrome浏览器。
有没有办法将onchange事件附加到非创建的元素?
有没有办法拦截元素的加载?
它*可能*可以用[x-tags项目](http://x-tags.org/index)使用的技巧来做些事情。 – Pointy 2013-03-09 16:58:48
事实上,我发现我可以使用'frame.addEventListener(“DOMNodeInserted”,function(){...})',即使事实上我间接发现了在x-tags项目页面上。那么谢谢你! – SGH 2013-03-09 17:17:07
请注意,像DOMNodeInserted这样的事件已被弃用https://developer.mozilla.org/en-US/docs/Mozilla_event_reference – Christophe 2013-03-10 00:07:18