0

埋め込まれたJavaScriptに出くわしました。

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

これを動的に実行する方法を知りたいです。その理由は、コードを DB に保存して、後でその場で実行できるようにしたいからです。

私はすでに $.get を URL で使用して、応答に対して eval を実行しようとしましたが、うまくいきませんでした。

これが解決策に役立つ場合は、jQuery を使用します。

どうすればこれについて行くことができますか?ありがとう。

4

4 に答える 4

2

を探してい$.getScript("http://player.ooyala.com/player.js?embedCode=5oZDBoMzreLfI78xe1sCSLDmQQFyhXym&deepLinkEmbedCode=5oZDBoMzreLfI78xe1sCSLDmQQFyhXym")ます。

スクリプトが を使用している場合document.write、これは不可能であることに注意してください。

于 2012-04-18T23:07:12.850 に答える
1

以下を使用できます。$.getScript("http://player.ooyala.com/player.js?embedCode=5oZDBoMzreLfI78xe1sCSLDmQQFyhXym&deepLinkEmbedCode=5oZDBoMzreLfI78xe1sCSLDmQQFyhXym&playerContainerId=myplayer")

部分に注意してくださいplayerContainerId=myplayer

document.write() ではなく div の innerHtml としてプレーヤーを追加したい場合、Ooyala には playerContainerId パラメータがあります。

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

于 2012-04-19T00:00:35.347 に答える
1

jqueryを使用して、文字列全体を本文に追加できます

編集:いくつかの文字をエスケープする必要があります

$("body").append('\<script src="http://player.ooyala.com/player.js?embedCode=5oZDBoMzreLfI78xe1sCSLDmQQFyhXym&deepLinkEmbedCode=5oZDBoMzreLfI78xe1sCSLDmQQFyhXym"\>\<\/script\>');​
于 2012-04-18T23:06:26.200 に答える
0

CORS をサポートしている場合はそれを要求し、jQuery を使用$.globalEval()して応答を評価できます。応答はscript要素内で (メモリから) 実行されます。

または、ロード時に要素を削除し、script再度使用するときに挿入します。

于 2012-04-18T23:05:46.490 に答える