Установить фокус на плагин jHtmlArea jQuery - PullRequest
2 голосов
/ 24 октября 2009

Я использую плагин jHtmlArea jQuery на своей странице, и я делаю его видимым при нажатии кнопки. Теперь я пытаюсь поместить фокус в редактор jHtmlArea, как только он отобразится, но просто не могу этого достичь.

Я нашел это сообщение в блоге Настройка фокуса на элемент управления в IFRAME с помощью jQuery , который говорит об установке фокуса на элемент внутри IFrame, который использует плагин Thickbox, сначала установив фокус на IFrame, а затем элемент, но jHTMLArea не помещает никаких элементов в его IFrame.

Так что либо я неправильно выбираю элемент тела IFrame, либо вызываю .focus() для этого тела, что для меня ничего не делает.

Вот вывод, который генерирует jHtmlArea:

<div class="jHtmlArea" style="width: 498px;">
  <div class="ToolBar" style="width: 496px;">
    <ul>
      ... removed toolbar code for briefness
    </ul>
  </div>
  <div>
    <iframe style="height: 256px; width: 494px;">
      <html>
        <head>
          <link rel="stylesheet" type="text/css" href="jHtmlArea.Editor.css"></link>
        </head>
        <body>
           <br _moz_editor_bogus_node="TRUE" _moz_dirty=""/>
        </body>
      </html>
    </iframe>
  </div>
  <textarea id="TxtAreaDescription" rows="15" cols="60" name="TxtAreaDescription" style="display: none;"/>

Вот кое-что из того, что я пробовал:

var iframe = $("iframe");
if (iframe != null) {
    $(iframe).focus();
    $(iframe).contents().find("body").focus();
}

Спасибо за любую помощь, которую вы можете передать.

1 Ответ

3 голосов
/ 21 декабря 2009

загружено: function () { this.iframe [0] .contentWindow.focus (); }

...