首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HTML1.4AJAX回调,jQuery ()从响应中剥离外部JS

HTML1.4AJAX回调,jQuery ()从响应中剥离外部JS
EN

Stack Overflow用户
提问于 2010-01-21 17:32:38
回答 2查看 997关注 0票数 2

在使用ajax 1.4时,我遇到了外部JS在使用html()访问jQuery响应时被删除的问题。

我使用ajax请求加载下一个页面,为tumblr主题创建了一个无限的滚动效果。Tumblr以音频和幻灯片形式输出JS,以呈现<embed>元素(Flash播放器)来显示内容。无法更改标记。

使用jQuery 1.3.2,一切工作正常,外部JS被执行并呈现播放器,但是在1.4中,javascript被移除,我只剩下回退文本。JS包含在响应中,但是当在ajax回调中使用html()时,我无法检索或获取要执行的javascript。

我想使用jQuery 1.4,因为我在其他部分使用了它的一些新功能,我可以使用split让它工作,但我不确定在特定字符串上拆分响应是否可靠。

我已经准备了一个basic sample (包括两个文件,test.htmlrequest.html)来演示这个问题。打开test.html以从request.html加载本地请求

这种行为是故意的吗,我可以绕过它吗,或者我只是做错了?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-01-21 18:39:54

来自.ajax()上的jQuery文档

如果指定了html,则在将

作为字符串返回之前,将执行检索到的数据中的任何嵌入的JavaScript。类似地,脚本将执行从服务器拉回的JavaScript,然后将脚本本身作为文本数据返回。

我找不到任何绕过它的方法...但它的表现似乎与1.3.2有所不同,"1.3-compat“插件似乎也无法修复它。

票数 0
EN

Stack Overflow用户

发布于 2010-01-21 18:22:13

在我看来,这像是1.4中的一个bug --我使用您的示例代码得到了相同的结果;切换回1.3.2允许再次执行嵌入的脚本。

文档当然没有提到1.4中的任何更改,这些更改会阻止在检索到的HTML中执行脚本。我会在jQuery forum上发布一个问题,看看其他人是否也有这个问题;你可能也会引起某个jQuery开发人员的注意。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2108121

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档