我有一种情况,我将外部 HTML 加载到网页上的 WYSIWYG 编辑器中。外部 HTML 来自受信任的来源,包括<div>
来自多个不同页面的两个特定标签之间的内容。
我的问题是某些页面包含内联 javascript 事件处理程序。所以当我在 WYSIWYG 编辑器中工作时,某些事件会导致这个 js 的执行。
大多数情况下,它除了在控制台中填满错误说之外什么都不做... is not defined
,这可能就是它的全部,这不会是一个问题。但是,它仍然很乱,我不知道是否没有某个页面可以执行类似的操作alert(...)
,这可能会变得非常烦人。代码都是可信的,但与预期的上下文分离,它可能会产生不良结果。
我想找到一种方法来全局阻止这种执行,最好不修改内联脚本。我可以做一些事情,比如附加=false;
到每个处理程序,但是我必须检查所有传入的元素,即使使用正则表达式,这也会降低性能。此外,在将编辑后的 HTML 提交回服务器之前,我必须将其删除,这似乎是一个很大的痛苦,而且很难完美地完成。
有没有办法阻止这个在线代码在这个特定的上下文中执行?