1

これは一般的な質問であるため、この質問に表示するコードは実際にはありません。

特定のjqueryスクリプトをIE9で実行するのに問題があります(実際、IEのどのバージョンでも)

最も厄介なのは、これがデバッグを非常に困難にしているわずかなヒットまたはミスのように見えることです。

FF と Chrome では問題なく完全に動作します。

ただし、IE では、F5 キーを押して更新した場合にのみスクリプトが実行されます。

明らかに私は使用しています

$("document").ready(function() {

    alert("start control script");
    // lots more code here
};

観察によると、一度スクリプトを実行すると、その後ログアウトして再度ログインすると、すべて問題ないように見えます。しかし、ブラウザを完全に閉じると、スクリプトを開始するために F5 キーを押す必要が生じます。これは IE でのみ発生します。

ブラウザを完全に閉じるとキャッシュが失われるため、更新してログアウトすると機能すると思います。

どんな考えでも大歓迎です。

4

3 に答える 3

2

あなたはそれを間違って書きましdocumentた.グローバルオブジェクトであり、引用符で囲む必要はありません.

$(document).ready(function() {

    alert("start control script");
    // lots more code here
});

単語の周りに引用符がなくdocument、最後の括弧が欠落していることに注意してください。

于 2012-11-24T20:35:25.653 に答える
1

引用符で囲まれたドキュメントは必要ありません)。また、最後に括弧がありません。

$(document).ready(function() {

    alert("start control script");
    // lots more code here
});
于 2012-11-24T20:37:10.207 に答える
1

jQueryのドキュメントから:

次の 3 つの構文はすべて同等です。

$(document).ready(handler)
$().ready(handler) (this is not recommended)
$(handler)

もあり$(document).bind("ready", handler)、jQuery 1.8 で非推奨になりました。これは ready メソッドと同様に動作しますが、ready イベントが既に発生しているときに .bind("ready") を試行すると、バインドされたハンドラーは実行されません。この方法でバインドされた Ready ハンドラは、上記の他の 3 つのメソッドによってバインドされた後に実行されます。

.ready() メソッドは、現在のドキュメントに一致する jQuery オブジェクトでのみ呼び出すことができるため、セレクターは省略できます。

.ready() メソッドは通常、無名関数とともに使用されます。

$(document).ready(function() {
  // Handler for .ready() called.
});

これは、次の呼び出しと同等です。

$(function() {
 // Handler for .ready() called.
});

DOM が初期化された後に .ready() が呼び出されると、渡された新しいハンドラーがすぐに実行されます。

于 2012-11-24T20:37:54.917 に答える