Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Undo и Redo в визуальном редакторе

11K
13 апреля 2005 года
teslapat
4 / / 13.04.2005
Помогите, а не то я сойду сума :(
Почему не работают команды отката в этом
упрощенном до невозможности коде
<html>
<body>
<div align=center>
<script>
function Post()
{
document.myform.message.value = newTextArea.document.body.innerHTML;
myform.submit();
}
function EditorExecCommand(command_param)
{
var tr = frames.newTextArea.document.selection.createRange();
alert('Undo &#228;&#238;&#241;&#242;&#243;&#239;&#237;&#238; = '+tr.queryCommandEnabled('Undo'));
alert('Bold &#228;&#238;&#241;&#242;&#243;&#239;&#237;&#238; = '+tr.queryCommandEnabled('Bold'));
tr.select();
tr.execCommand(command_param);
frames.newTextArea.focus();
}
</script>
<form name="myform" method="POST">
<input type="hidden" name="message">
</form>
<input type="button" onClick="EditorExecCommand('InsertHorizontalRule');" value=" hr ">
<input type="button" onClick="EditorExecCommand('Undo');" value=" Undo ">
<input type="button" onClick="EditorExecCommand('Redo');" value=" Redo ">

<input type="button" onClick="EditorExecCommand('Bold');" value=" B ">
<input type="button" onClick="EditorExecCommand('Italic');" value=" I ">
<input type="button" onClick="EditorExecCommand('Underline');" value=" U ">

<input type="button" onClick="EditorExecCommand('JustifyLeft');" value=" Left ">
<input type="button" onClick="EditorExecCommand('JustifyCenter');" value=" Center ">

<input type="button" onClick="EditorExecCommand('InsertOrderedList');" value=" OL ">
<input type="button" onClick="EditorExecCommand('InsertUnorderedList');" value=" UL ">
<iframe width="100%" height="80%" id="newTextArea" name="newTextArea"></iframe>
<input type="button" onClick="Post();" value="&#209;&#238;&#245;&#240;&#224;&#237;&#232;&#242;&#252;">
<script>
newTextArea.document.designMode = "on";
newTextArea.document.open();
newTextArea.document.writeln('Текст');
newTextArea.document.close();
</script>
</div>
</body>
</html>
287
13 апреля 2005 года
Shiizoo
958 / / 14.03.2004
Аж мурашки по коже =))) IMHO: юзание innerHTML - дурной стиль (это IE'шная примороча, а IE - враг народа).
1.8K
25 апреля 2005 года
MishaSt
170 / / 11.08.2003
Цитата:
Originally posted by Shiizoo
Аж мурашки по коже =))) IMHO: юзание innerHTML - дурной стиль (это IE'шная примороча, а IE - враг народа).


Потому что в MSDN так написано, что not implemented т.е НЕ РЕАЛИЗОВАННО.

11K
26 апреля 2005 года
teslapat
4 / / 13.04.2005
Цитата:
Originally posted by MishaSt
Потому что в MSDN так написано, что not implemented т.е НЕ РЕАЛИЗОВАННО.



Товарищу спешу вас поздравить с вашим офигенным
непрофессионализмом.
Я не спрашиваю про то, использовать мне иннерхтмл
или нет, и я не знаю браузера, поддерживающего
лучше все самые хитрые и извратные идеи :Ё
А ответ на эту тему мне уже дали на другом
форуме и дали корректно.
Так что адиоз!

1.8K
26 апреля 2005 года
MishaSt
170 / / 11.08.2003
Цитата:
Originally posted by teslapat
Товарищу спешу вас поздравить с вашим офигенным
непрофессионализмом.
Я не спрашиваю про то, использовать мне иннерхтмл
или нет, и я не знаю браузера, поддерживающего
лучше все самые хитрые и извратные идеи :Ё
А ответ на эту тему мне уже дали на другом
форуме и дали корректно.
Так что адиоз!


Товарищь, спешу поздравить вас с тем, что вы настоящий хам! Я не понимаю, что за наезды тут на нас, тебе отвечают, а ты ещё тут обвиняешь нас в непрофессионализме.
А вот написано что в MSDN. Под Undo
написано
"Not currently supported.".
http://msdn.microsoft.com/workshop/author/dhtml/reference/commandids.asp
Вот!

11K
27 апреля 2005 года
teslapat
4 / / 13.04.2005
Цитата:
Originally posted by MishaSt
Товарищь, спешу поздравить вас с тем, что вы настоящий хам! Я не понимаю, что за наезды тут на нас, тебе отвечают, а ты ещё тут обвиняешь нас в непрофессионализме.
А вот написано что в MSDN. Под Undo
написано
"Not currently supported.".
http://msdn.microsoft.com/workshop/author/dhtml/reference/commandids.asp
Вот!


Прошу прощения, возможно я и погорячился.
Просто задалбывают эти гнилые наезды
на microsoft и ИЕ.
Солидная компания, делающая деньги.
Предоставляющая хороший продуманный АПИ.
Прекрасный браузер, но тормозящий из-за
своей продуманности: пока не достроит полностью
таблицу - он ее не показывает, чтобы не извращать
дизайн.
А ундо прекрасно поддерживается, просто
это метод документа, а не текст_ранджа.
Еще раз извините за горячку.

1.8K
27 апреля 2005 года
MishaSt
170 / / 11.08.2003
Цитата:
Originally posted by teslapat
Прошу прощения, возможно я и погорячился.
Просто задалбывают эти гнилые наезды
на microsoft и ИЕ.
Солидная компания, делающая деньги.
Предоставляющая хороший продуманный АПИ.
Прекрасный браузер, но тормозящий из-за
своей продуманности: пока не достроит полностью
таблицу - он ее не показывает, чтобы не извращать
дизайн.
А ундо прекрасно поддерживается, просто
это метод документа, а не текст_ранджа.
Еще раз извините за горячку.


Ок. Все ответные наезды снимаются. Нет оснований не верить, что Undo работает, а вот почему, непонятно. Когда сам делал WYSIWYG-редактор, то кнопки Undo и Redo не делал из-за этого "not supported", даже не проверял работают или нет эти команды. Делал пару дней назад.

А по поводу IE. Вообще-то у него море негативных моментов, которые мне не нравятся, но они не избежны для такого сложного продукта, у MS всё так наворочено, и с морем негативных моментов. Кому что по душе: простота но меньше негативных моментов, или функциональность и много негативных моментов.

Вот задолбался вчера. Когда помещаю FORM в таблицу, то после формы IE ВСЕГДА отображает отступ, а он мне не нужен. Пришлось форму эту помещать в ещё одну таблицу, а тёг форм помещать между <TABLE> и <TR>. Почему-то IE </FORM> воспринимет как и
. Остальные отображают нормально. Однако в IE реально можно запрограмить многое.

Кстати, вот интересная ссылка - WYSIWYG редактор, который работает много под чем (Mozilla, IE, Opera), и при этом лицензия BSD (т.е можно использовать спокойно в комерческих продуктах). Даже контекстное меню своё сделали.
http://www.dynarch.com/projects/htmlarea/
Да и на самом сайте прикольно.
http://www.dynarch.com/
Этот DHTML - всё-таки придумка MS, а не других.

3.2K
11 мая 2005 года
brime
8 / / 27.02.2003
Так все работает :)

function EditorExecCommand(command_param)
{
if ((command_param=='Undo') || (command_param=='Redo')){
var tr = frames.newTextArea.document;
}else{
var tr = frames.newTextArea.document.selection.createRange();
tr.select();
}
tr.execCommand(command_param);
frames.newTextArea.focus();
}
287
11 мая 2005 года
Shiizoo
958 / / 14.03.2004
"Такой продукт" это в каком смысле? "Осёл" это дохлая ацтойная брузла. Мазилла со всеми её собратьями это есть сила, если говорить об апи, и тем более если говорить об апи "хорошем и продуманном", что не удивительно, потому как они (nc) в развитие dhtml вложились (js и прочие прелести dhtml это заслуга nc), а МакроОслы лишь слизали все это и втиснули при поддержке w3c nc'овские задумки в рекомендации и стандарты.

Непонимаю как можно не обплевавшись вспоминать об оном (осле, тьфу), а уж говорить о логике в устройстве его работы это вообще сущие богохульство и грех. IMO: sux навеки.

И я лично никак на вопрос не отвечал, а лишь дал комментарий. :D
11K
18 мая 2005 года
pwestre
8 / / 18.05.2005
Делать кнопки или не делать - дело вкуса. Но в визуальном редакторе вполне отрабатывается комбинация клавиш CTRL+Z CTRL+SHIFT+Z
11K
18 мая 2005 года
pwestre
8 / / 18.05.2005
Забыл приписать. По умолчанию принимается что визуальный редактор - прерогатива MSIE. На прочих броузерах визивик стали делать относительно недавно и то не на всех.
287
18 мая 2005 года
Shiizoo
958 / / 14.03.2004
Цитата:
Originally posted by pwestre
По умолчанию принимается что визуальный редактор - прерогатива MSIE.


С чего вдруг? :/ Тыкните пальцем, у кого эттаких умолчания?

Цитата:
Originally posted by pwestre
На прочих броузерах визивик стали делать относительно недавно и то не на всех.



Стали кто?:D А не лучше-ли для начала самому вникнуть проблему, а потом смотреть на подход к ней кого-то со стороны? :/ Это ужасно.

 
Код:
IIIIII IIIIII         IIII II  II II  II II II II
  II   II           III    II  II  IIII  II II II
  II   IIIIII IIIII  III   II  II   II   II II II
  II   II              III II  II  IIII        
IIIIII IIIIII       IIII    IIII  II  II II II II
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог