存储可共享的嵌入式javascript以供日后使用

时间:2012-04-18 23:02:01

标签: javascript embed

我遇到了一些嵌入式javascript,例如

<script src="http://player.ooyala.com/player.js?embedCode=5oZDBoMzreLfI78xe1sCSLDmQQFyhXym&deepLinkEmbedCode=5oZDBoMzreLfI78xe1sCSLDmQQFyhXym"></script>

我想知道如何动态执行此操作。原因是,我希望能够将代码保存在数据库中,然后稍后执行它。

我已经尝试过将$ .get与url一起使用并在响应中做一个eval而没有运气。

如果这对解决方案有帮助,我会使用jQuery。

我怎么能这样做?感谢。

4 个答案:

答案 0 :(得分:2)

您正在寻找$.getScript("http://player.ooyala.com/player.js?embedCode=5oZDBoMzreLfI78xe1sCSLDmQQFyhXym&deepLinkEmbedCode=5oZDBoMzreLfI78xe1sCSLDmQQFyhXym")

请注意,如果脚本使用document.write,则无法执行此操作。

答案 1 :(得分:1)

您可以使用jquery

将整个字符串附加到正文

编辑:必须逃避一些角色

$("body").append('\<script src="http://player.ooyala.com/player.js?embedCode=5oZDBoMzreLfI78xe1sCSLDmQQFyhXym&deepLinkEmbedCode=5oZDBoMzreLfI78xe1sCSLDmQQFyhXym"\>\<\/script\>');​

答案 2 :(得分:1)

您可以使用:$.getScript("http://player.ooyala.com/player.js?embedCode=5oZDBoMzreLfI78xe1sCSLDmQQFyhXym&deepLinkEmbedCode=5oZDBoMzreLfI78xe1sCSLDmQQFyhXym&playerContainerId=myplayer")

请注意playerContainerId=myplayer部分。

如果您想将播放器添加为div的innerHtml而不是document.write(),则Ooyala有一个playerContainerId参数。

http://support.ooyala.com/developers/documentation/api/player_examples_qpass.html

答案 3 :(得分:0)

如果它支持CORS然后使用jQuery的$.globalEval()来评估响应,你可以请求它 - 它在script元素内执行(来自内存)。

或者,在加载时删除script元素,然后在想要再次使用时将其注入。