これは簡単ですが、それは私を夢中にしています。私は、テキストエリアを含むjQuery Toolsオーバーレイフォームをポップアップしています。そのテキストエリアにフォーカスがあるようにしたいと思います。フォーム自体はうまく動作していますが、フォーカスを得ることができません。フォームが提示されたときに次のコードが実行されます。jQueryツールオーバーレイフォームでフォーカスを取得するにはどうすればよいですか?
$(document).ready(function() {
console.log('firing!');]
$('#edit-comment').css('color', '#ff0000');
$('#edit-comment').focus();
});
フォームは私がにconsole.logのエントリを取得し、私はテキストエリアの色の変化を取得し、表示されますので、コードが間違いなく実行し、発見された場合テキストエリア。しかし、私はテキストエリアにフォーカスを設定しないでください。
私はこれが非常に奇妙なことを発見しています。そこに何か洞察?
色の変化の事は、私がテキストエリアを正しく見つけていることを確認するためのテストコールであり、私はそれに何かできることがある - 実際にはそこには存在しません。しかし、とにかく、(a)document.getElementByIdはjQuery呼び出しとどのように違っていますか(b)試してみましたが、どちらも機能しません。 ?? –
奇妙なことに、私はwebappを使っていて働いています。私はちょうどChromeでそれを使って簡単なhtmlをテストしていましたが、IE 8ではそうはしませんでした。それは実際に動作するはずです。 –
ええ、そういうわけでそれはとても奇妙です。:) Re IE 8 - http://api.jquery.com/focus/を確認してください。 - 呼び出しが行われたときにフォーム要素が表示されない場合、IEは明らかに壊れます。私は上記のコードを修正して、show()ハンドラ内のfocus()コールをtextareaに掛けたままにしてみましたが、まだ運がありません。 –