1

divにさらにアイテム(スクリプト形式のビデオ)を動的に追加する必要があります。以下のコードでは、appendは何もしません。私も文字列形式(つまり "")でスクリプトを追加しようとしました。私はどんな助けにも感謝します!!!!

<!DOCTYPE html>
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>

  <div>
      <script type="text/javascript" src="http://video.foxnews.com/v/embed.js?id=1993203907001&w=466&h=263"></script>
  </div>

<script>
$(document).ready(function() {
var script = document.createElement( 'script' );
script.type = 'text/javascript';
script.src = 'http://video.foxnews.com/v/embed.js?id=1993203907001&w=466&h=263';
  $("div").append(script);
});
</script>

</body>
</html>
4

3 に答える 3

1

jQueryは<script />特別な方法でタグを処理します(.append() -> .domManip())代わり
にDOMメソッドを使用してください.appendChild()

document.getElementsByTagName('div')[0].appendChild(script);​

この回答を読んで、その理由を詳しく調べてください。

于 2012-11-27T23:57:35.010 に答える
1

安全でない JavaScript が、URL http://video.foxnews.com/v/video-embed.html?video_idのフレームから URL file:///C:/Users/###/Desktop/test.html のフレームにアクセスしようとしています。=1993203907001&w=466&h=263&loc= . ドメイン、プロトコル、およびポートが一致する必要があります。

別のドメインから何かにアクセスしようとしている => XSS

http://en.wikipedia.org/wiki/Cross-site_scripting

そしてまた

https://support.ookla.com/entries/21097566-what-is-crossdomain-xml-and-why-do-i-need-it

于 2012-11-27T23:53:29.630 に答える
-1

この行を置き換えてみてください

$("div").append(script);

これとともに

document.getElementsByTagName('div')[0].appendChild(script);​

フィドルをチェック

ネイティブ.appendChildメソッドは動いているようですが、なぜかjQuery.append()が動いていないようです..

于 2012-11-27T23:52:00.887 に答える