我知道当用户通过创建脚本元素并通过document.appendChild将其注入页面时单击元素时,我可以注入脚本。但是,脚本正在侦听onload和onDOMContentReady(或他们自己的本地domReady事件,不确定)。
如果我仅在用户单击元素时注入脚本,则onload / onDOMContentReady的回调将永远不会触发,因为这些事件已经过了。
有什么想法吗?这个第三方脚本会提取所有这些其他请求,但这不是页面加载的最佳选择。
答案 0 :(得分:0)
我没有看到像这样做的问题(简洁地使用jquery):
// on document ready
$( function() {
// attach the click handler
$('#loadScript').click( function( e ) {
// on click, get the script
$.getScript('path/to/your/script.js', function() {
// your script is loaded, so what you need from here
// to handle this click event.
});
});
});
我认为你有点过分思考。您只需要担心一旦dom元素准备好就可以加载脚本。您也可以使用类似require.js的内容。