0

と がありappend()focus()追加された の最初の入力にフォーカスするように設定されていますdom

IE は追加に時間がかかっているため、フォーカスが機能していません。が完全に追加されsetTimeoutた後にフォーカスを設定する方法 (以外) はありますか?dom

ありがとう!

4

2 に答える 2

1

append()appendTo()は同期コマンドであるため、コールバックは必要ありません。

$(child).appendTo(parent)
        .focus();

複数のステートメントを使用している場合append()、実際には、大きなものを一度追加するよりもかなり遅くなります。これは、IE で時間がかかる理由を説明している可能性があります。

于 2012-06-21T19:09:25.790 に答える
0
var oldHtml, el, toBeAppended;
function appendAndFocus()
{
   oldHtml = el.html();
   el.append(toBeAppended);
   appnedAndFocus_h()
}
function appnedAndFocus_h()
{
   if(el.html()==oldHtml) //if(el==oldHtml) - CORRECTED.
   {
      setTimeout(appendAndFocus_h, 10); //just for browser to be taken a breath.
      return;
   }
   else
   {
      el.focus();
   } 
}

注意: テストされていないコードです。

于 2012-06-21T19:13:25.230 に答える