Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何动态插入jquery代码_Javascript_Jquery_Html_Dhtml - Fatal编程技术网

Javascript 如何动态插入jquery代码

Javascript 如何动态插入jquery代码,javascript,jquery,html,dhtml,Javascript,Jquery,Html,Dhtml,我正在尝试在动态加载的内容上使用jQuery丰富的动画功能 我可以动态地将脚本插入元素,如下所示: var element = document.createElement("div"); element.innerHTML = "some html here"; var script = document.createElement("script"); script.type = "text/javascript"; script.text = 'alert("Alert!");';

我正在尝试在动态加载的内容上使用jQuery丰富的动画功能

我可以动态地将脚本插入元素,如下所示:

var element = document.createElement("div");
element.innerHTML = "some html here";

var script  = document.createElement("script");
script.type = "text/javascript";
script.text = 'alert("Alert!");';

element.appendChild (script);
当我尝试将jquery代码插入脚本元素时,问题就出现了。这不起作用,并导致脚本根本不运行

var element = document.createElement("div");
element.innerHTML = "some html here";

var script  = document.createElement("script");
script.type = "text/javascript";
script.text = 'alert("Alert!");\n';
script.text = script.text+'$("div").animate({height:300,opacity:0.4},"slow");\n';

element.appendChild (script);
我可以成功地附加javascript代码来更改所需的元素,但是使用jquery函数可以简化事情

使用firebug,我可以看到脚本元素已经加载到dom中,但是当我向其中添加jquery代码时,什么都没有发生,甚至警报也没有发生

我已将jquery源文件包含在主文档中,并将所有代码包装到一个窗口中。addEventListener('load',function())可在页面完成加载时调用启动上述代码的函数


有没有一种方法可以动态创建对jquery函数的调用?我这样做对吗?我被难住了一段时间,谷歌还没有帮我解决这个问题,非常感谢您的帮助。

这应该可以满足您的要求:

$('body').append('<s' + 'cript>console.log("lol");</script>');

嘿,你的代码没问题,你只是在这行漏了一个倒逗号

script.text = script.text+'$("div").animate({height:300,opacity:0.4},"slow")';
这是你的小提琴

我不知道您的目标是什么,但这种方法似乎是有史以来最不可维护的-只需定义您的函数,然后在适当的事件[异步加载、元素创建、用户操作…]上调用它们。也许可以看看您的
脚本。text
值分配。似乎在
alert()
@Mike之后需要一些分号操作。谢谢您在此表单上的简单输入。我的原始代码中就有这些内容。@moonwave99,我在一个ajax站点上工作,该站点通过php从服务器提取xml格式的用户数据。这些数据被解析并以各种方式显示给用户。我希望使用ajax异步加载页面,并使用jquery进行转换动画。@Gabe只需写下您的代码:)您无需创建
包装器即可执行-。
script.text = script.text+'$("div").animate({height:300,opacity:0.4},"slow")';