Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Проблема Javascript pasteHTML
 
 автор: Night_Wolf   (27.06.2008 в 15:51)   письмо автору
 
 

Помогите разобраться, в чем может быть дело не могу догнать!

Пробую создать небольшой визуальный редактор, в котором у меня уже есть две функции:

function FormatText(command, option)
{
          frames.Org.focus();
          var range = frames.Org.document.selection.createRange();
          frames.Org.document.execCommand(command, false, option);
          frames.Org.focus();
}

function AddHTML(AnCode)
{
        frames.Org.focus();
        var range = frames.Org.document.selection.createRange();
        range.pasteHTML(AnCode);
        frames.Org.focus();
}


Они отличаются только одной строчкой - где выполняется либо execCommand, либо pasteHTML (если нужно вставить html-код). Проблема у меня в том, что при execCommand, например если вставлять картинку, она встает куда надо, ориентируясь на позицию курсора. А вот в случае с pasteHTML код вставляется только в самое начало области редактора, а нужно вставить его туда, где стоит курсор или заменить выделенный текст.

   
 
 автор: Незнайка   (27.06.2008 в 16:33)   письмо автору
 
   для: Night_Wolf   (27.06.2008 в 15:51)
 

>>Пробую создать небольшой визуальный редактор
Простите, а что за редактор?

   
 
 автор: Night_Wolf   (27.06.2008 в 17:15)   письмо автору
 
   для: Незнайка   (27.06.2008 в 16:33)
 

IFRAME, designmode="on"

   
 
 автор: Незнайка   (27.06.2008 в 19:47)   письмо автору
 
   для: Night_Wolf   (27.06.2008 в 17:15)
 

>> IFRAME, designmode="on"
Я к сожалению не в курсе, что это и зачем? Нельзя ли немного подробнее объяснить?

   
 
 автор: mihdan   (29.06.2008 в 02:56)   письмо автору
 
   для: Night_Wolf   (27.06.2008 в 15:51)
 

АААА. Извечная проблема wysiwyg-писателей - откройте исходник этого форума, увидите все эти функции!!!

ЗЫ: Помнится sim5 приводил отличные функции
ЗЫ2: (из исходника)

function tag(text1, text2) 
  { 
     if ((document.selection)) 
     { 
       document.form.message.focus(); 
       document.form.document.selection.createRange().text = text1+document.form.document.selection.createRange().text+text2; 
     } else if(document.forms['form'].elements['message'].selectionStart != undefined) { 
         var element    = document.forms['form'].elements['message']; 
         var str     = element.value; 
         var start    = element.selectionStart; 
         var length    = element.selectionEnd - element.selectionStart; 
         element.value = str.substr(0, start) + text1 + str.substr(start, length) + text2 + str.substr(start + length); 
     } else document.form.message.value += text1+text2; 
  }

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования