0

IE8はエラーをスローし続けますアクセスが拒否されました:

  • jquery-1.7.2.min.js | 行:2、文字:21695
  • jquery-1.7.2.js | 行:1712、文字:4

(使用するバージョンによって異なります)。

Enterキーを押すと発生します( 「Enter」の機能はタブインデックスをジャンプします)。また、IE8を使用する特定のサーバーと特定のPCグループでのみ発生します。

[編集]それは呼び出すときに起こります

$("[TabIndex='"+tabindex+"']").focus()
$("[TabIndex='"+tabindex+"']").blur()

完全なコード

//WALKING with ENTER
        var tabindex = 1; //start tabindex || 150 is last tabindex
        $(document).keypress(function(event) {
            var keycode = (event.keyCode ? event.keyCode : event.which);
            if(keycode == '13') { //onEnter
                if($("[TabIndex='"+tabindex+"']").attr('id') == 'submit_btn'){ //if on 'sbm - button' click!
                    $("#submit_btn").click();
            return false;
                };
                $("[TabIndex='"+tabindex+"']").blur()//.removeClass('highlight_input');
                tabindex++;
                //while element exist or it's readonly and tabindex not reached max do
                while(($("[TabIndex='"+tabindex+"']").length == 0 || $("[TabIndex='"+tabindex+"']:not([readonly])").length == 0) && tabindex != 150 ){
                    tabindex++;
                }
                if(tabindex == 150){ tabindex = 1 } //reseting tabindex if finished
                $("[TabIndex='"+tabindex+"']").focus()//.addClass('highlight_input');
                return false;
            }
        });

このエラーを再現できるのは、Windows(XP)のログオフ/再ログ->このインターフェイスに戻って[Enter]キーを押すことだけです。F5以降:すべてが正常に機能します。

誰かが以前にこのようなことをすでに経験したことがありますか?

4

1 に答える 1

0

blur()またはfocus()ウェアが呼び出されたときに問題が発生したため、回避策を見つける必要がありました。タスクは、jquery focus/blur を呼び出す代わりに (ほぼ) 純粋な javascript を呼び出すことでした。

//Focus workaround for IE8 (exception)
var elid = $('input[tabindex='+tabindex+']').attr("id");
var element = document.getElementById(elid); 
element.blur(); 

var elid = $('input[tabindex='+tabindex+']').attr("id");
var element = document.getElementById(elid); 
element.focus(); 

それ以外の

$("[TabIndex='"+tabindex+"']").blur()
$("[TabIndex='"+tabindex+"']").blur()

質問がある場合、または同じ問題に直面したことがある場合は、コメントをドロップしてください。

于 2012-07-24T08:09:37.677 に答える