我在解决这个问题上遇到了问题。我首先尝试将脚本标记设置为字符串,然后在页面加载后使用jquery replaceWith()将它们添加到文档中:
var a = '<script type="text/javascript">some script here</script>';
$('#someelement').replaceWith(a);
但是我在这个变量上得到了字符串文字错误。然后我尝试对字符串进行编码,如下所示:
var a = '&left;script type="text/javascript">some script here<\/script>';
但是将其发送到replaceWith()
只会将该字符串输出到浏览器。
有没有人可以告诉我,在页面加载后,最好是通过jQuery,你将如何在浏览器中动态添加一个<script>
标签?
发布于 2010-10-05 02:05:27
您可以将脚本放入一个单独的文件中,然后使用$.getScript
加载并运行它。
示例:
$.getScript("test.js", function(){
alert("Running test.js");
});
发布于 2010-10-05 02:23:15
尝试以下操作:
<script type="text/javascript">
// Use any event to append the code
$(document).ready(function()
{
var s = document.createElement("script");
s.type = "text/javascript";
s.src = "http://scriptlocation/das.js";
// Use any selector
$("head").append(s);
});
发布于 2014-11-24 05:43:53
以下是使用现代(2014) JQuery的正确方法:
$(function () {
$('<script>')
.attr('type', 'text/javascript')
.text('some script here')
.appendTo('head');
})
或者,如果你真的想替换一个div,你可以这样做:
$(function () {
$('<script>')
.attr('type', 'text/javascript')
.text('some script here')
.replaceAll('#someelement');
});
https://stackoverflow.com/questions/3857874
复制相似问题