我尝试使用 示例代码:
这是一个非常有趣的解决方案:http:
//24ways.org/2005/have-your-dom-and-script-it-too 因此,请使用此代替脚本标记: 您必须使用eval()来执行您作为DOM文本插入的任何脚本代码. MooTools会自动为您完成此操作,我确信jQuery也会这样(取决于版本.jQuery版本1.6+使用 通常,如果你innerHTML
a 将一些脚本加载到页面中innerHTML
?
Shouldn't an alert saying 'hi' appear?
1> 小智..:
你可以将你的触发器图像Base64编码为````(这不会做网络请求)实际上......你不需要一个图像,引用一个不存在的图像而不是``onload``使用``onerror``(但这会做一个网络请求)
这太棒了!
非常好,并在所有浏览器中完全工作!
2> zombat..:eval
).这节省了解析标签和转义内容的麻烦,以及一堆其他"陷阱".
eval()
自己去做,你想创建/发送脚本代码而不使用任何HTML标记,因为这些标记不
eval()
正确.
对于任何问题,eval()都不是一个很好的解决方案.
我真正想要做的是加载一个外部脚本,而不仅仅是eval一些本地脚本.使用innerHTML添加脚本标记比创建脚本DOM元素并将其添加到正文要短得多,我正在努力使我的代码尽可能短.你是否必须创建dom脚本元素并将它们添加到dom而不是仅仅使用innerHTML之类的东西?有没有办法在函数中使用document.write执行此操作?
正如zombat建议的那样,使用Javascript框架加载外部脚本,不要试图重新发明轮子.JQuery使这非常简单,只需包含JQuery并调用:$ .getScript(url).您还可以提供一个回调函数,该函数将在加载脚本后执行.
阿里尔是对的.我很欣赏尝试保持代码简短,并且添加带有`innerHTML`的`
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有