Online WYSIWYG редактор тегов... @ DeForum.ru
DeДверь  
Логин:  
Пароль:  
  Автологин  
   
Разместить рекламу
Письмо админу
Правила | FAQ | *Поиск | Наша команда | Регистрация | Вход
 
 
На страницу 1 2  >  Страница 1 из 2 [ Сообщений: 53 ] 
*   Список форумов / Начинка и техника / Программирование для WWW » ответить » создать топик « | »
Автор Сообщение
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Заголовок сообщения: Online WYSIWYG редактор тегов...
Сообщение Добавлено: 14 Апрель 2003, 16:08:46 
Кто делал сабж - просьба поделиться опытом.
Очень нужно...

_________________
Web-камера - http://gorod.ck.ua
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Сообщение Добавлено: 14 Апрель 2003, 16:28:38 
делал. что конкретно интересует?

_________________
Мудрость не всегда приходит с возрастом. Бывает, что возраст приходит один.
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 14 Апрель 2003, 16:36:55 
визуальный редактор - чтобы юзер просто правил текст и вставлял картинки не заботясь о том как это происходит.
Нужно связку PhP+JS
Есть что то подобное ?
Если я правильно понимаю все это - реализуется оно на базе чего то типа textarea.
Все функции - как то выделение, форматирование и т.д. выношу на кнопки.
Отсюда первые два вопроса :
1) каким образом в textarea реализовать вставку картинок
2) каким образом это самое визуальное форматирование впоследствии превратить в обычный HTML ?

_________________
Web-камера - http://gorod.ck.ua
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 14 Апрель 2003, 16:40:20 

Long писал(а):
делал. что конкретно интересует?



Можешь показать пример - я бы по нему уже спрашивал ?

_________________
Web-камера - http://gorod.ck.ua
MpaK999 Муж.
участник
1
Сообщения: 1716
Зарегистрирован: 14.11.02
Откуда: Ufa/Russia
Сообщение Добавлено: 14 Апрель 2003, 17:32:22 
есть очень интересный код в редакторе собственного сайта на www.kazan.ws

_________________
:: metal kick ass ::
phantomas
новый человек
3
Сообщения: 195
Зарегистрирован: 23.11.02
Откуда: Москва
Сообщение Добавлено: 14 Апрель 2003, 18:18:18 
Wysiwyg редактор на php javascript
http://vietdev.sourceforge.net/portal/h … =0&thold=0

Или еще но уже на asp, но это дело можно переложить на php без особых проблем
http://www.siteobjects.com/siteobjects/ … le.one.asp
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Сообщение Добавлено: 15 Апрель 2003, 09:52:06 
Styler, показывать пока не буду, потому, что пока нет зашиты от выкачивания - сам понимаешь, что написать, а потом раздавать направо и налево не хочется. ;) как пример можно использовать http://editor.phoundry.com/ есть возможность скачать к себе рабочий пример. сразу для любителей халявы скажу - исходник закриптован Zend Encoder'ом.
поскольку пока конкретных вопросов не возникло, опишу некоторые особенности работы.
прежде всего это никакая не textatrea. есть два способа достичь такого эфекта - использовать встроенный объект IE, который, кстати, генерит текст страничек при сохранении через меню. и второй способ - использовать edit mode элемента div.
второй способ говорят более гибок. но все равно - работать и тот и другой будет только в ИЕ. у меня так исторически сложилось, что использован первый способ и мне его вполне хватает. кстати, после выхода .NET и msdn for .net полностью исчезли описания работы с этими объектами. не могу понять причину этого явления. так что найди старый мсдн - там все есть. в качестве примера для изучения можно скачать со страницы http://msdn.microsoft.com/archive/defau … wnload.asp маленький экзампл. и почитать, то, что осталось от описания в архиве.
а теперь ждем конкретных вопросов.

_________________
Мудрость не всегда приходит с возрастом. Бывает, что возраст приходит один.
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 15 Апрель 2003, 10:01:32 
Вопрос первый :
что это за объект такой встроенны и как его использовать ?

_________________
Web-камера - http://gorod.ck.ua
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Сообщение Добавлено: 15 Апрель 2003, 10:24:19 
объект для создания редактирования - 2D360201-FFF5-11D1-8D03-00A0C959BC0A
использование его таково:
1. создаем объект
Код:
<OBJECT classid="clsid:2D360201-FFF5-11D1-8D03-00A0C959BC0A" height=400 id=editor name=editor width=730 VIEWASTEXT>
<PARAM NAME="Scrollbars" VALUE="true">
</OBJECT>

2. вызываем его методы, например:
Код:
DECMD_FINDTEXT = 5008
OLECMDEXECOPT_PROMPTUSER = 1
document.editor.ExecCommand(DECMD_FINDTEXT,OLECMDEXECOPT_PROMPTUSER);

данный пример вызовет стандартный запрос на поиск в тексте. вообще же, все методы надо смотреть в мсдне. с той поправкой, что описана выше (не мсдн дот нет)

_________________
Мудрость не всегда приходит с возрастом. Бывает, что возраст приходит один.
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 15 Апрель 2003, 10:56:15 
Спасибо за ответ !
Еще вопросец - за тип отображения данных (Html or Text) отвечает вот этот параметр - VIEWASTEXT ?

_________________
Web-камера - http://gorod.ck.ua
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Сообщение Добавлено: 15 Апрель 2003, 11:22:04 
Styler, если честно - хз :smirk: :lying: я реализовывал просмотр хтмл через отдельный див, который скрывал. может это не совсем верно, зато логически проще было работать.
да, кстати, для работы с таблицами нужен отдельный объект clsid:47B0DFC7-B7A3-11D1-ADC5-006008A5848C

_________________
Мудрость не всегда приходит с возрастом. Бывает, что возраст приходит один.
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 15 Апрель 2003, 11:42:05 
Блин - на msdn как всегда - пока найдешь то что надо полдня продет.
Меня интересует загрузка и сохранение документов в объект, а также как организовывается переключение между режимами редактирования.

_________________
Web-камера - http://gorod.ck.ua
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Сообщение Добавлено: 15 Апрель 2003, 12:03:15 
как я реализовал переключение - я тебе уже рассказал. а загрузка и выгрузка - просто
var content = document.editor.DocumentHTML;
document.editor.DocumentHTML=content;

_________________
Мудрость не всегда приходит с возрастом. Бывает, что возраст приходит один.
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 15 Апрель 2003, 12:08:15 

Long писал(а):
как я реализовал переключение - я тебе уже рассказал. а загрузка и выгрузка - просто
var content = document.editor.DocumentHTML;
document.editor.DocumentHTML=content;



Каким образом мне передать сюда конкретное имя файла сохраненное в переменной ? :insane: :insane: :insane:

_________________
Web-камера - http://gorod.ck.ua
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 15 Апрель 2003, 12:24:51 
Вот создал я объект
<OBJECT
CLASSID="clsid:683364AF-B37D-11D1-ADC5-006008A5848C"
ID=DHTMLEdit
HEIGHT=400
WIDTH=500>
</OBJECT>

С помощью чего реализуется загрузка в него для редактирования файла vasya.htm ?

_________________
Web-камера - http://gorod.ck.ua
Crazy Муж.
Модератор
107
Сообщения: 14561
Зарегистрирован: 23.12.01
Откуда: Moscow
Сообщение Добавлено: 15 Апрель 2003, 12:51:39 
FAQ

_________________
We've got the big memory and the small memory. The small memory's to remember the small things and the big memory's to forget the big ones.
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Сообщение Добавлено: 15 Апрель 2003, 13:14:50 
Styler, ну я же сослался на мсдн - там почти все есть:
Цитата:
The DHTML Editing control supports two methods that work directly against files on disk: LoadDocument and SaveDocument. Both of these methods simply take paths and file names as parameters and then handle the lower-level jobs of opening and closing files as needed. Both also support an option that allows you to display standard Windows dialog boxes (Open and Save As) to find documents or directories.

подробнее, смотри там.

_________________
Мудрость не всегда приходит с возрастом. Бывает, что возраст приходит один.
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 16 Апрель 2003, 12:53:01 
С объектом разобрался. Страницы загружаю и сохраняю.
Еще вопрос - каким образом мне теперь из этого объекта извлекать выделенный текст и к нему применять различные действия - например - изменение на болд текста ???
Помогите - очень надо !

_________________
Web-камера - http://gorod.ck.ua
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 16 Апрель 2003, 12:57:40 
Я так понимаю, чтое сли этот объект должен отвечать за работу с HTML - все эти ф-ции у него должны быть встроенными ?

_________________
Web-камера - http://gorod.ck.ua
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Сообщение Добавлено: 16 Апрель 2003, 13:41:37 
Styler, естестевнно у этого обекта есть методы. точное и полное описание их есть в мсдн. но не в мсдн.NET, а в предидущем выпуске. метод, который выполняет операцию над объектом (болд и т.д.) ExecCommand. первый параметр метода определяет то, что нужно сделать. второй... не помню сейчас что делает. посмотри в примере (я давал на него уже ссылку).

_________________
Мудрость не всегда приходит с возрастом. Бывает, что возраст приходит один.
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 16 Апрель 2003, 14:45:11 
Пробовал юзать.
При попытке использования например болда - пишет
DECMD_BOLD - определение отсутствует. И привет.
Вызываю такой ф-цией :
function Create_Bold() {
DHTMLEdit1.ExecCommand(DECMD_BOLD,OLECMDEXECOPT_DODEFAULT);
DHTMLEdit1.focus();
}

Не работает.
Помогите плиз - я уже замучился- два дня не могу найти ответа.
:insane: :insane: :insane: :insane: :insane: :insane: :insane: :insane: :insane: :insane: :insane: :lamer:

_________________
Web-камера - http://gorod.ck.ua
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 16 Апрель 2003, 15:36:46 
Фууух - зарабтало !
Надо было вставить dhtmled.js - константы блин...
:fie:

_________________
Web-камера - http://gorod.ck.ua
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Сообщение Добавлено: 16 Апрель 2003, 16:40:53 
дык! ясен пень, что константы должны быть где-то определены :laugh:

_________________
Мудрость не всегда приходит с возрастом. Бывает, что возраст приходит один.
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Сообщение Добавлено: 16 Апрель 2003, 16:41:52 
Styler, завидую я тебе... мне вот никто не объяснял - что за объект такой и как с ним работать :weep:

_________________
Мудрость не всегда приходит с возрастом. Бывает, что возраст приходит один.
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 16 Апрель 2003, 17:15:03 
Спасибо за помощь всем - если что еще нужно будет - спрошу !

_________________
Web-камера - http://gorod.ck.ua
vexoid
новый человек
0
Сообщения: 295
Зарегистрирован: 15.12.02
Откуда: msk
Сообщение Добавлено: 17 Апрель 2003, 14:05:54 
хммм... если не через объект то можно ещё через iframe в blank.html пишем то что должно отображаться на пустой странице... у меня ничего в нём нет...
<iframe src="editor/blank.html" name="idContent" id="idContent" width="100%" height="80%" frameborder="0" onLoad="javascript:getContent();"></iframe>
в
getContent пишем, соответственно var wysiwyg_content = 'здесь текст который сразу надо вставить';
idContent.document.body.innerHTML = wysiwyg_content;
idContent.document.designMode = "on";
idContent.focus();
изменение свойств у текста и картинок всё через exec например exec('Copy') exec('Cut') exec('Paste') полный перечень не помню где посмотреть но в сети найти можно по запросу javascript exec

в принципе могу и через div расписать в общих чертах если интересно, чем то готовым делиться не буду...
а по поводу того что где-то есть, но серверная часть криптована - ерунда... основное - сам интерфейс реализованный на html + js, а серверный кусок прост до ужаса...

_________________
lost world... lost life... lost tomorrow... only night
vexoid
новый человек
0
Сообщения: 295
Зарегистрирован: 15.12.02
Откуда: msk
Сообщение Добавлено: 17 Апрель 2003, 14:09:04 
да совсем забыл - данные в форму потом затолкать в объект hidden какой нибудь, соответственно в том что ниже - имя формы formsave а сейвится всё в поле pagetext
document.formsave.pagetext.value=idContent.document.body.innerHTML;

_________________
lost world... lost life... lost tomorrow... only night
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 17 Апрель 2003, 14:28:03 
Я обдумывал такой вариант реализации - просто через объект как оказалось все гораздо проще - в нем присутствуют все основные функции управления загруженным контентом.
Я просто эти ф-ции вызываю - очень удобно.
2Long - а можно еще пару вопросов ?
1) Как сохранить открытый документ на то же место, откуда он открывался (на сервер) ? :confused: :confused: :confused:
2) Как вставить в текст тег <hr> так, чтобы при этом содержимое страницы не удалялось ?

_________________
Web-камера - http://gorod.ck.ua
vexoid
новый человек
0
Сообщения: 295
Зарегистрирован: 15.12.02
Откуда: msk
Сообщение Добавлено: 17 Апрель 2003, 14:42:18 
по поводу работы через объект - допустим у заказчика из соображений безопасности отключен activex и как тогда ? .) хотя - конечно на вкус и цвет... .)
позволю себе ответить на 1 ый вопрос - тут именно связка должна быть серверный код (perl|php) + тот самый компонент (как более конкретно - не скажу, так как с компонентом не заморачивался)

_________________
lost world... lost life... lost tomorrow... only night
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 17 Апрель 2003, 14:51:32 
vexoid, - насчет первого вопроса - я знаю - я так загрузку документа в объект делал - вопрос состоит в том, в КАКОЙ ПЕРЕМЕННОЙ этого объекта хранится тот текст (страницы) который отображен в объекте.
Сохраню то я средствами ПШП например - нужно просто знать, откуда брать текст.

_________________
Web-камера - http://gorod.ck.ua
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Сообщение Добавлено: 17 Апрель 2003, 16:26:58 
Styler, все абсолютно прозрачно - content=DHTMLEdit1.document.DocumentHTML
вставка любых дополнительных вещей, будь-то hr или еще что-то у меня организованна через функцию (если привести к твоему названию объекта)
Код:
function Ins(dt){
    var rng = document.DHTMLEdit1.DOM.selection.createRange(); 
    rng.pasteHTML(dt);
    rng.select();
    return;
}

_________________
Мудрость не всегда приходит с возрастом. Бывает, что возраст приходит один.
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 17 Апрель 2003, 16:33:26 
Относительно первого вопроса - какой ф-цией можно сохранить документ на сервер -
DHTMLEdit1.SaveDocument(DHTMLEdit1.CurrentDocumentPath, false); - :confused:
Эта что ли ?

_________________
Web-камера - http://gorod.ck.ua
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Сообщение Добавлено: 17 Апрель 2003, 16:49:06 
на сервере работают только серверные языки - пхп, перл, и др., а твой сприпт работает на клиенте. почувствуйте разницу. как передать данные на счервер знаешь?

_________________
Мудрость не всегда приходит с возрастом. Бывает, что возраст приходит один.
Styler
новый человек
0
Сообщения: 104
Зарегистрирован: 19.04.02
Откуда: Черкассы
Сообщение Добавлено: 17 Апрель 2003, 17:08:58 
Через hidden поле формы

_________________
Web-камера - http://gorod.ck.ua
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Сообщение Добавлено: 18 Апрель 2003, 08:49:39 
Styler, ага, возьми с полки пирожок ;)

_________________
Мудрость не всегда приходит с возрастом. Бывает, что возраст приходит один.
*   Список форумов / Начинка и техника / Программирование для WWW « | » » ответить » создать топик
На страницу 1 2  >  Страница 1 из 2 [ Сообщений: 53 ] 
Показать сообщения за:   Поле сортировки  
Найти:
Перейти:  
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.
cron


ООО ДеФорум
При использовании материалов сайта ссылка на DeForum.ru — обязательна.
Проект Павла Батурина ©2001-2077; // Powered by phpBB © 2013 phpBB Group
Rambler's Top100