0

私はこのスクリプトを使用します(document.writeを実行します。srcにアクセスして確認できます)。このスクリプトは、ページのHTMLシーケンスに到達するとすぐに読み込みに時間を費やします。

<script type="text/javascript" src="http://pkmncards.disqus.com/recent_comments_widget.js?num_items=25"></script>

これにより、スクリプトの読み込み中にスクリプトが1〜2秒間読み込まれるのを防ぐことができるため、代わりにjQueryAjaxを介してスクリプトを読み込んでハングアップを防ぎます。

これが私が試みたものです:

var $j = jQuery.noConflict();
$j(document).ready(function () {
    $j.ajax({
        url: "http://pkmncards.disqus.com/recent_comments_widget.js?num_items=25",
        dataType: "script",
        success: function (data) {
            $j("#recent-discussion").html(data)
        }
    });
});

しかし、私は成功を適切に処理していません。リクエストの読み込みが表示されますが、何も実行されません。スクリプトを実行し、document.writeをターゲットの#recent-discussionに出力する必要があります。

私はまだ例を探していますが、私が間違っていることを理解することはできません...どんな助けも大歓迎です!

4

2 に答える 2

2

document.writeページが読み込まれた後は実行できません。を使用するAJAX呼び出しを介してロードするスクリプトは、document.write正しく機能しません。

于 2013-02-26T20:12:08.647 に答える
1

ajax呼び出しは正しいように見え、実際にはsuccessコールバックで何もする必要はありません。スクリプトはその時点ですでに実行を開始しています(ただし、必ずしもそうとは限りません)。

動作しない場合は、正しくロードされているかどうかを確認します(おそらくerror、ajax呼び出しでコールバックを使用します)。ところで、このスクリプトはメインページと同じドメインにありますか?異なるドメインからスクリプトをロードすることはできますが、通常はそれらにajax呼び出しを行うことはできません(同一生成元ポリシーのため)。

スクリプトを実行し、document.writeをターゲットの#recent-discussionに出力する必要があります。

それが実際に可能だとは思いません...それがスクリプトで実行する必要があり、変更できない場合は、実行できることはほとんどありません(つまり、モンキーパッチを除くdocument.write)。

于 2013-02-26T20:06:36.390 に答える