0

注: IE8 と IE7 (IE8 開発者ツールを使用) でのみ試しましたが、これらは私が利用できる唯一のバージョンです。

Wordpress 用の ajax 検索プラグインを使用しています。プラグインは次の場所にあります: http://wordpress.org/extend/plugins/threewp-ajax-search/

Firefox ではうまく動作していますが、IE では ajax リクエストを行ってから失敗する兆候が見られます。これをIEに絞り込み、他のブラウザが多数の結果を取得した場合でも常に警告する$.get()機能を使用して、関数から結果を受信しませんでした。ajax リクエストを処理するプラグインのセクションは次のとおりです。alert(ThreeWP_Ajax_Search.total_results);0

$.get(url, function(data){
        ThreeWP_Ajax_Search.results = $('.hentry', data);

        // Remove extra elements if necessary
        ThreeWP_Ajax_Search.total_results = ThreeWP_Ajax_Search.results.length;
        alert(ThreeWP_Ajax_Search.total_results);
        if ( ThreeWP_Ajax_Search.results.length > ThreeWP_Ajax_Search.options.results_to_display )
        {
            ThreeWP_Ajax_Search.results = ThreeWP_Ajax_Search.results.slice( 0, ThreeWP_Ajax_Search.options.results_to_display );
        }

        if ( ThreeWP_Ajax_Search.results.length < 1 )
            ThreeWP_Ajax_Search.hide_results();

        ThreeWP_Ajax_Search.do_callback(callback);
    });

注:urlは標準の Wordpress 検索 URL であり、wordpress 検索エンジンによって処理されます。いくつかの検索プラグインがありますが、それらはすべてサーバー側で実行されます。

また、に置き換え$.get()$.ajax()設定しようとしましcache: falseたが、まったく効果がありませんでした。

この問題の原因を知っている人はいますか?

実際の例は、http: //rcnhca.org.uk/sites/first_steps/にあります (「ケア」を検索すると、多数の結果が返されます)。

4

2 に答える 2

2

ブラウザがIE7またはIE8の場合、条件付きJSがロードされているようです。このファイルは「selectivizr-mis.js」と呼ばれ、ロードすると 404 エラーが返されます。

おそらく、サイトの IE7 および IE8 の機能は、正しく動作するためにこのファイル内の何かに依存していますか?

どちらの場合でも、そのファイルはおそらく正しくロードされるはずです。

于 2012-04-26T14:21:44.783 に答える
1

問題は、IE7/IE8 で CORS がサポートされていないことだと思います。おそらくこれが役立つでしょうか?

http://www.nczonline.net/blog/2010/05/25/cross-domain-ajax-with-cross-origin-resource-sharing/

于 2012-04-26T14:14:20.977 に答える