您必须使用eval()来执行作为DOM文本插入的任何脚本代码。
MooTools会自动为您执行此操作,而且我敢肯定jQuery也是如此(取决于版本。jQuery 1.6+版本使用eval
)。这样可以节省解析<script>
标签和转义内容的麻烦,以及一堆其他“陷阱” 的麻烦。
通常,如果您要eval()
亲自进行操作,则希望创建/发送没有任何HTML标记(例如)的脚本代码<script>
,因为这些标记将无法eval()
正常使用。
因此,使用它代替脚本标签:
<img src="empty.gif" onload="alert('test');this.parentNode.removeChild(this);" />