2011-07-14 10 views
0

私は、.live関数を利用する単純なjquery関数を持っています。jquery 1.5 FF&IE9でのライブの問題

それは$(文書)は

機能はFFまたはIE Chromeで動作しますが、ない.readyときがない、新しく追加された要素に適用されます。

ページでは1.5分

<script> 
     $("#345").live("keypress", function(){ 
       if (event.which == '13') { 
         event.preventDefault(); 
         $('#123').focus(); 
       } 

}); 


$(document).ready(function(){ 
     $('#123').focus(); 
}); 


</script> 

編集をロードしている。また、.ready関数内.liveコードを入れてみました。同じ結果

+1

は実際のIDですか? IDは数字で始めることはできません。これが問題なのかどうかはわかりません。また、なぜあなたはエスケープを使用していますか? –

+0

なぜ二重引用符をエスケープしますか?それは正しいとは思わない... –

+0

はい。彼らは本当のidsです。私はそれを変更しようとしましょう。他の関数は同じidで動作するためです。 – user845009

答えて

1

数値IDは使用しないでください。ほとんどのプログラミング言語の識別子と同じように扱うことをお勧めします。

また、最初の行にあなたの関数定義からeventパラメータを除外:

$("#345").live("keypress", function(event){ 
    if (event.which == '13') { 
     event.preventDefault(); 
     $('#123').focus(); 
    } 
}); 

$(document).ready(function(){ 
    $('#123').focus(); 
}); 

これは、PHPの文字列の中で、あなたのjQueryを包む、どちらかの前に、PHPタグを閉じて後、それを再度開くしないことも良い方法ですまた、引用符の問題をデバッグするのを防ぐためにコードを再構築することもできます。一部のテキストエディタでは適切な構文強調表示を行い、作業を容易にします。

+0

ありがとうございました。問題は私がF5しなかったことです。 – user845009

関連する問題