0

jQueryFancyboxウィンドウで開くフォームがあります。ページが読み込まれると、fancyboxウィンドウが自動的に開きます。ロード時に、Fancyboxウィンドウのフォームのユーザー名フィールドにフォーカスを設定したいと思います。私はこれがfancyboxが呼び出されたときに行われなければならないことを発見したので、私は機能しない与えられたコードを試しました:コードスニペット:

jQuery(document).ready(function() {
$("#hidden_link").trigger('click');
document.getElementById('username').focus(); 
});

フォーム名は「login_form」、フィールドIDは「username」です。

4

3 に答える 3

1

どのバージョンを使用しているのかよくわかりません。

私はあなたがバージョン1を使用していると仮定しているので、fancyboxを呼び出すときにこのオプションを追加してみてください

  • onStart コンテンツのロードを試みる直前に呼び出されます
  • onCancel 読み込みがキャンセルされた後に呼び出されます
  • onComplete コンテンツが表示されると呼び出されます
  • onCleanup 閉じる直前に呼び出されます
  • onClosed FancyBox が閉じられると呼び出されます

これは fancybox api ドキュメントhttp://fancybox.net/apiからのものです

使いたい機能を追加します。

この場合

$('#somediv').fancybox({
    oncomplete: function() {
        document.getElementById('username').focus();
    }
});
于 2013-01-29T07:04:59.843 に答える
0

ファンシーボックスが表示される前に focus() を呼び出そうとしています。その呼び出しを ready() に入れる代わりに、onComplete() に入れます。

onComplete: function() { 
          $('#username').focus(); 
}
于 2013-01-29T07:07:19.563 に答える