我有一个非常大的javascript文件,只有当用户点击某个按钮时才能加载。我使用jQuery作为我的框架。有没有内置的方法或插件可以帮我做到这一点?
更多细节:我有一个"Add Comment“按钮,它应该加载TinyMCE javascript文件(我已经将所有TinyMCE内容简化为一个JS文件),然后调用tinyMCE.init(...)。
我不想在初始页面加载时加载它,因为不是每个人都会点击“添加评论”。
我知道我可以这样做:
$("#addComment").click(function(e) { document.write("<script...") });
但是有没有更好的/封装的方式呢?
发布于 2009-05-26 20:54:33
是的,使用getScript而不是document.write -它甚至允许在文件加载后进行回调。
不过,您可能希望在包含TinyMCE之前检查是否定义了它(以便随后调用“Add Comment”),因此代码可能如下所示:
$('#add_comment').click(function() {
if(typeof TinyMCE == "undefined") {
$.getScript('tinymce.js', function() {
TinyMCE.init();
});
}
});
假设你只需要对它调用一次init
,也就是说。如果没有,你可以从这里弄清楚:)
https://stackoverflow.com/questions/912711
复制相似问题