|
|
|
| Есть код:
frame=window.frames["frame_editor"];
var range = frame.document.selection.createRange();
Все прекрасно работает, но только под IE и Opera а в Mozilla ошибка:
frame.document.selection is undefined
Как быть с этой командой в Mozilla? | |
|
|
|
|
|
|
|
для: serenya1983
(20.02.2010 в 03:11)
| | Объект selection и метод createRange () для этого объекта поддерживаются только браузером MSIE.
В Mozilla и Opera используются совсем другие методы. Например, getSelection (). Или тот же createRange (), но не для выделенного, а для объекта document.
В общем, вам надо определять браузер, и использовать два РАЗНЫХ скрипта: один для MSIE (он, как я понимаю, у вас есть), второй - для Mozilla.
Со вторым скриптом можно посоображать... но надо знать - что вы далее делаете с выделенным.
Выкладывайте сюда ваш скрипт для MSIE - если это в принципе будет возможно (у MSIE есть уникальные возможности, не имеющие аналогов в Mozilla), то я вам набросаю аналогичный скрипт для Mozilla. | |
|
|
|
|
|
|
|
для: АЯ
(20.02.2010 в 09:04)
| | Скпирт должен вставлять в текущее положение курсора HTML текст, примерно таким образом:
frame=window.frames["frame_editor"];
frame.focus();
var range = frame.document.selection.createRange();
range.pasteHTML("HTML код"); | |
|
|
|
|
|
|
|
для: serenya1983
(20.02.2010 в 12:26)
| | Нажмите прямо здесь (чуть ниже справа) на ссылку Ответить и просмотрите код открывшейся страницы.
Поищите там функцию tag (), где увидите:
if ((document.selection))
{
//это для MSIE
}
else
{
//а это - для Mozilla
}
| И еще изучите обсуждение и доработку этой функции - http://www.softtime.ru/forum/read.php?id_forum=4&id_theme=64151 | |
|
|
|