0

私の状態の中には、次のものがあります。

var url = "http://ads.eyeonx.ch/adserverscript/custom.min.js";
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = url;
$('.ad').append(script);
console.log('ad loaded');

「広告がロードされました」というコンソール メッセージを受け取りましたが、広告が表示されず、要素を調べると、<script>が class の div 要素に追加されませんad

Firebug でエラーは表示されませんが、これが機能しない理由を見逃していることは明らかですか? 少なくともスクリプトタグが要素に表示されることを期待しています。

4

3 に答える 3

1

これに対する正確な問題は、要素を調べたときにコードが表示されなかった理由についてはまだ不明ですが、Firefox コンソール (Firebug コンソールではない) で、document.write();. これは、ページの読み込み後に追加する機能と競合するようです。

私の場合の解決策は、iframe を使用することでした。したがって、代わりに:

var url = "http://ads.eyeonx.ch/adserverscript/custom.min.js";
$("<script>").attr({"type": "text/javascript", "src": url}).appendTo(".ad");

divを削除し、.adこのコードを使用して iframe を動的に追加しました。

$("<iframe>").attr({"class": "ad", "src": "/ads/ad.html", "scrolling": "no"}).prependTo('#container');

/ads/ad.html標準的な<script></script>ものだけが含まれています。

于 2015-10-30T21:18:51.050 に答える