Редактор + javascript код

Added by Антон Романов almost 2 years ago

Столкнулся вот с чем. Решил для определенной страницы добавить особый javascript код, ну и добавил его через "Исходник" в редакторе. НО! при возвращении к визуальному редактировании либо сохранении данных сразу же после вставки - редактор полностью удаляет все данные в <script>...</script>
Почему? как то подправить можно?


Replies (20)

RE: Редактор + javascript код - Added by Dmitry Levashov almost 2 years ago

Редактор не удаляет script, если только вы ему не сказали в конфиге denyTags : ['script']
Возможно это дело рук браузера.

RE: Редактор + javascript код - Added by Юрий Пюрбеев almost 2 years ago

У меня есть такая же проблема: тег <script> легко и быстро выкусывается.
Потрассировал - похоже, что проблема в функции html() jquery вот здесь:
(2329) var n = $('<div/>').html(html);

Здесь html содержит код, в котором есть <script>, а n.html() после этого места возвращает код без тега.
Можно ли как-то решить проблему?

RE: Редактор + javascript код - Added by Dmitry Levashov almost 2 years ago

В текущей версии врядли :( В девелоперской эта проблема уже решена, но до ее релиза еще далеко :(
Я бы предложил следующее - перед вставкой кода в редактор заключить скрипт в комментарии с каким-нибудь флагом, а перед сохранением - равернуть этот коммент регекспом

RE: Редактор + javascript код - Added by Dmitry Levashov over 1 year ago

Проблема решена

RE: Редактор + javascript код - Added by Alixon S over 1 year ago

Проблема уже решена?
Если да, то где найти реализацию. Очень нужная фича для меня, определяющая возможность использования редактора можно сказать...

RE: Редактор + javascript код - Added by Mihail Pelmenev about 1 year ago

в продолжение темы...

скачал по ссылке поставил...

а он всёравно вырезает.

подскажите может я что-то не то делаю?

RE: Редактор + javascript код - Added by Troex Nevelin about 1 year ago

Можете привести полный пример кода, js и html в котором вырезается script, у нас есть трудности с отловкой этого бага

RE: Редактор + javascript код - Added by Mihail Pelmenev about 1 year ago

Для того чтобы мы друг друга быстрее поняли
буду использовать ваше демо,
1. набираю в браузере http://elrte.org/demo
2. перехожу в исходник, удаляю всё содержимое, прописываю

<script>
alert('Работаем?');
</script>

<script>
alert("Так тоже на всякий случай?");
</script>

<script type="text/javascript">
alert("Делаем полностью");
</script>

так навсякий случай =)

3. перехожу в редактор, потом обратно в исходники а там в поле надпись &nbsp_; что писал больше нет

пробую иначе 1 и 2 такие же
3. жму сразу на сохранение

тоже отправляет пробел

2 пример:

далее делаем из кода коментарий, то есть во второй пункт в начале добавляем <!-- и в конце соответственно -->

и в первом и во втором случае он нам возвращает:

<!--
<script type="text/javascript">
alert('Работаем?');
</script>
<script type="text/javascript">
alert("Так тоже на всякий случай?");
</script>
<script type="text/javascript">
alert("Делаем полностью");
</script>
--&gt;  

конец гемороит

хотя если коменты писать без тега скрипт внутри они проходят нормально

скрины прилогаю
могу записать видео =)

переходим_в_редактор.png - 2ой пример прописал пункт перехожу в редактор (165.2 kB)

возвращаемся_в_исходник.png - 2ой пример прописал код перешёл в редактор, вернулся в исходник (172.8 kB)

отпавка_коментированого_js.png - 2ой пример 2ой пункт повторно + отправил скрипт (102.3 kB)

код_без_комента.png - 1ый пример 2ой пункт (172.8 kB)

пустой_редактор.png - 1ый пример прописал код перехожу в редактор (165.9 kB)

пробел_в_исходнике.png - 1ый пример прописал код перешёл в редактор, вернулся в исходник (163.7 kB)

отправка_скрипта.png - 1ый пример 2ой пункт повторно + отправил скрипт (92 kB)

прописываем_js.png - 2ой пример 2ой пункт (172.9 kB)

RE: Редактор + javascript код - Added by Mihail Pelmenev about 1 year ago

поравка чтобы сразу не путаться, загрузчик чуть чуть перемудрил старался выбирать в порядке а он загрузил х пойми как...

так рисунки по порядку должны идти так:
4. код_без_комента.png - 1ый пример 2ой пункт (172,85 КБ)
5. пустой_редактор.png - 1ый пример прописал код перехожу в редактор (165,95 КБ)
6. пробел_в_исходнике.png - 1ый пример прописал код перешёл в редактор, вернулся в исходник (163,7 КБ)
7. отправка_скрипта.png - 1ый пример 2ой пункт повторно + отправил скрипт (91,96 КБ)

8. прописываем_js.png - 2ой пример 2ой пункт (172,88 КБ)
1. переходим_в_редактор.png - 2ой пример прописал пункт перехожу в редактор (165,18 КБ)
2. возвращаемся_в_исходник.png - 2ой пример прописал код перешёл в редактор, вернулся в исходник (172,77 КБ)
3. отпавка_коментированого_js.png - 2ой пример 2ой пункт повторно + отправил скрипт (102,3 КБ)

и там где вв тором римере я написал "он возвращает":

в конце скрипта идет не завершения комента "-->" а "--&gt_;" (на скринах видно)

RE: Редактор + javascript код - Added by Pavel Su about 1 year ago

Та же проблема, на данный момент есть решения?

RE: Редактор + javascript код - Added by Alixon S about 1 year ago

Да, решение есть - выкачать ветку мастер.

Так я сделал, можно посмотреть что получилось здесь (elRTE v1.2) CodeMirror + elRTE = Подсветка исходного кода

RE: Редактор + javascript код - Added by cat black 5 months ago

Блин, люди, у меня тоже яваскрипт выкусывается напрочь (Version 1.3 (2011-06-23))
Баловался с denyTags - всеравно выкусывает мой <script type="text/javascript"> ... </script>
Чо делать?

RE: Редактор + javascript код - Added by Troex Nevelin 5 months ago

Можете проверить что на demo тоже самое случается? Так же конкретный кусок кода который не обрабатывается был бы кстати и какой браузер

RE: Редактор + javascript код - Added by cat black 5 months ago

Ну вот такой код: <script type="text/javascript"> alert("YAYA!"); </script> в демо код пропадает.
В броузерах махон, фф, ие8.

RE: Редактор + javascript код - Added by cat black 5 months ago

или вот такой код попробуйте вставить в Source редактор а потом 2-3 раза попрыгать с Editor в Source...

<link rel="stylesheet" href="/engine/elrte/css/smoothness/jquery-ui-1.8.13.custom.css" type="text/css" media="screen" charset="utf-8">
<link rel="stylesheet" href="/engine/elrte/css/elrte.min.css" type="text/css" media="screen" charset="utf-8">
<link rel="stylesheet" href="/engine/elrte/elfinder/css/elfinder.css" type="text/css" media="screen" charset="utf-8">
<script src="/engine/elrte/js/jquery-1.6.1.min.js" type="text/javascript" charset="utf-8"></script>

появятся -->-->--> -->-->--> -->-->-->
т.е. выходит что движок делает попытки закомментить ненужное через ELRTE_COMMENT, но у него это выходит плохо.
да и похоже что при сбросе в post запрос ELRTE_COMMENT назад не исправляется.
Выше советуют юзать elRTE v1.2 а у меня 1.3

RE: Редактор + javascript код - Added by Troex Nevelin 5 months ago

К сожалению в ближайшее время врятли получиться добраться до обновления elRTE, так как сейчас в приоритете выход elFinder 2. Будем очень рады если кто-то возмётся починить эту проблему.

RE: Редактор + javascript код - Added by cat black 5 months ago

Походу дела товарищ Alixon S пофиксил проблему правда для версии 1.2
так что откатываемся на elrte 1.2 потом берем его пофиксиную elrte.min.js из
http://stalker-game-world.ru/elrte-code-hl/elrte-1.2/js/elrte.min.js
и радуемся жизни.
К сожалению я не разобрался чево он там пофиксил (библиотека обфусциорвана) но файл полегчал на полкило...
вобщем от 1.3 пришлось отказаться

RE: Редактор + javascript код - Added by cat black 5 months ago

И к еще большему сожалению сообщаю что даже патченый elrte выкусывает тег <form>
жаль потраченного времени, возвращаясь на предыдущий редактор... а вот elfinder порадовал - работает пока хорошо и интегрируется куда хош

(1-20/20)