Страница 1 из 1

Выделить содержимое DIV

СообщениеДобавлено: 02.03.2009 (Пн) 1:03
viter.alex
На этом форуме при вставке кода появляется ссылка «Выделить все», которая выделяет содержимое DIV. Как реализована эта функция selectCode?

Re: Выделить содержимое DIV

СообщениеДобавлено: 02.03.2009 (Пн) 2:00
iGrok
viter.alex писал(а):На этом форуме при вставке кода появляется ссылка «Выделить все», которая выделяет содержимое DIV. Как реализована эта функция selectCode?

О господи.. Ну это же за 5 секунд вытаскивается!

Код: Выделить всё
function selectCode(a)
{
   // Get ID of code block
   var e = a.parentNode.parentNode.getElementsByTagName('CODE')[0];

   // Not IE
   if (window.getSelection)
   {
      var s = window.getSelection();
      // Safari
      if (s.setBaseAndExtent)
      {
         s.setBaseAndExtent(e, 0, e, e.innerText.length - 1);
      }
      // Firefox and Opera
      else
      {
         var r = document.createRange();
         r.selectNodeContents(e);
         s.removeAllRanges();
         s.addRange(r);
      }
   }
   // Some older browsers
   else if (document.getSelection)
   {
      var s = document.getSelection();
      var r = document.createRange();
      r.selectNodeContents(e);
      s.removeAllRanges();
      s.addRange(r);
   }
   // IE
   else if (document.selection)
   {
      var r = document.body.createTextRange();
      r.moveToElementText(e);
      r.select();
   }
}

А html под это дело выглядит так:
Код: Выделить всё
<dl class="codebox">
  <dt>Код: <a onclick="selectCode(this); return false;" href="#">Выделить всё</a></dt>
  <dd>
    <code>
      ...
    </code>
  </dd>
</dl>

Re: Выделить содержимое DIV

СообщениеДобавлено: 02.03.2009 (Пн) 16:08
viter.alex
iGrok писал(а):…О господи.. Ну это же за 5 секунд вытаскивается!…


Как? html я прочитал. А как файл со скриптами достать?
Прошу прощения за тупой вопрос.

Re: Выделить содержимое DIV

СообщениеДобавлено: 02.03.2009 (Пн) 16:25
RayShade
Там в заголовках есть ссылки на JS файлы :) Их можно утащить просто вбив в адрес бар и потом нажав save as :)