我可以通过jQuery创建脚本标记吗?

Bil*_*lly 40 javascript jquery

我想通过jQuery创建一个脚本标记.

我使用以下代码:

$("<body>").append("<script></script>");
Run Code Online (Sandbox Code Playgroud)

它不起作用.你会做什么来实现它?

Cri*_*oma 66

你应该这样做

var script=document.createElement('script');
script.type='text/javascript';
script.src=url;

$("body").append(script);
Run Code Online (Sandbox Code Playgroud)

  • 听起来像一个公认的答案即将到来? (3认同)
  • 我测试了这段代码,但它确实有用.谢谢. (2认同)

Dan*_*ore 36

要从网址加载:

$("body").append($("<script />", {
  src: url
}))
Run Code Online (Sandbox Code Playgroud)

从现有源代码加载:

$("body").append($("<script />", {
  html: code
}))
Run Code Online (Sandbox Code Playgroud)

  • +1用html显示示例而不仅仅是URL (5认同)

epa*_*llo 16

你为什么不使用jQuery.getScript(url,[callback])

  • 这应该是一个评论而不是一个答案,或者至少应该写成答案而不是问题.目前还不清楚`getScript()`是否可以通过创建脚本标签来完成所有可能的事情.如果确实如此,如果它真的说明了那么答案会好得多. (9认同)
  • 我想加载javascript在另一个域中的另一个javascript. (3认同)

小智 11

错误在选择器中:

$("body").append("<script>alert('hello world');<\/script>");
Run Code Online (Sandbox Code Playgroud)

请注意,您必须转义附加字符串中的不允许字符.