Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Java Script

00 голосов
10
Подскажите пожалуйста, как корректно вставить в страницу или в элемент инфоблока Java Script?

Спасибо.
спросил 24 Фев, 13 от Misimka (200 баллов)

10 Ответы

00 голосов
Снимите флажок "визуальный редактор" или в режиме редактирования php просто в код в нужном месте спокойно вставьте свой java-скрипт - и будет Вам счастье!
ответил 24 Фев, 13 от ranger (900 баллов)
00 голосов
Спасибо за ответ. Так то оно так, но при повторном открытии или редактировании страницы или элемента у меня почему то скрипт нарушается. Хотелось бы этого как то избежать, ведь не будеш же постоян6но вставлять заново тот или иной скрипт (особенно когда их много).

И еще вопрос, иногда необходимо вставить код в тег <body> например, какой-то страницы, как это реализовывать в битриксе если на странице такого кода нет?

Еще раз спасибо.
ответил 13 Март, 13 от Misimka (200 баллов)
00 голосов
Ну, как вариант - вызывайте скрипт из файла, например так: <script type="text/javascript" language="JavaScript1.2" src="script.js"></script>.
ответил 12 Апр, 13 от ranger (900 баллов)
00 голосов
Помогите, пожалуйста...

есть скрипт (Рисунок 1)


<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=Windows-1251" />
</HEAD>

<STYLE>
UL {
list-style-type : none;
}

#sh {
border-color : blue;
border-width : 1px;
border-style : solid;
text-decoration : none;
font-size : 7pt;
color : blue;
font-family : 'Tahoma';
}
</STYLE>

<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--

// Сворачивает (скрывает) содержимое.
function doMenu_Hide(ASubObj, ASpanObj) {
ASubObj.style.display = 'none';
ASpanObj.innerHTML = '+';
} // doMenu_Hide

// Раскрывает (отображает) содержимое.
function doMenu_Show(ASubObj, ASpanObj) {
ASubObj.style.display = 'block';
ASpanObj.innerHTML = '−';
} // doMenu_Show

// Скрывает или раскрывает содержимое.
function doMenu(AObjIndex) {
var subObj = document.all['chapter' + AObjIndex];
var spanObj = document.all['shSpan' + AObjIndex];
if ( subObj.style.display == 'none' ) {
doMenu_Show(subObj, spanObj);
}
else {
doMenu_Hide(subObj, spanObj);
} // if..else
} // doMenu

// Действия при загрузке данной страницы.
function onBodyLoad() {
// Сворачиваем все подразделы главы 1.
doMenu_Hide(document.all['chapter1'], document.all['shSpan1']);
doMenu_Hide(document.all['chapter2'], document.all['shSpan2']);
doMenu_Hide(document.all['chapter3'], document.all['shSpan3']);
doMenu_Hide(document.all['chapter4'], document.all['shSpan4']);
doMenu_Hide(document.all['chapter5'], document.all['shSpan5']);
doMenu_Hide(document.all['chapter6'], document.all['shSpan6']);
} // onBodyLoad

//-->
</SCRIPT>

<BODY ONLOAD="onBodyLoad();">

<SPAN ID="shSpan2">−</SPAN> 2. Газовое оборудование
    2.1. Плиты. <br /> 2.2. Кондитерские плиты. <br /> 2.3. Блинницы. <br /> 2.4. Вафельницы. <br /> 2.5. Поффетьес. <br /> 2.6. Ренджеры. <br /> 2.7. Вок-плиты. <br /> 2.8. Большие вок-плиты. <br /> 2.9. Вок-плита-табурет. <br /> 2.10. Плиты-табуреты. <br /> 2.11. Большие табуреты. <br /> 2.12. Грили. <br /> 2.13. Шашлычницы. <br /> 2.14. Лава-грили. <br /> 2.15. Теппан-яки. <br /> 2.16. Противни. <br /> 2.17. Фритюрницы </LI>

<SPAN ID="shSpan3">−</SPAN> 3. Электрооборудование
    3.1. Грили. <br /> 3.2. Плиты-табуреты. <br /> 3.3. Теппан-яки. <br /> 3.4. Блинницы. <br /> 3.5. Нагревательные элементы. </LI>

<SPAN ID="shSpan4">−</SPAN> 4. Сковороды
    4.1. Чугун. <br /> 4.2. Эмалированный чугун. <br /> 4.3. Сталь. <br /> 4.4. Алюминий. <br /> 4.5. Воки. <br /> 4.6. Противни. <br /> 4.7. Котлы. <br /> 4.8. Принадлежности. </LI> </u
ответил 07 Авг, 13 от HostMain (140 баллов)
00 голосов
Здравствуйте!
У меня немного иная задача, т.к. предполагается, что добавлять эти самые ява скрипты будут пользователи, а именно код прослушки вида -
Код
<script type="text/javascript">var zippywww="www12";var zippyfile="47358625";var zippydown="ffffff";var zippyfront="000000";var zippyback="ffffff";var zippylight="000000";var zippywidth=680;var zippyauto=false;var zippyvol=80;var zippydwnbtn = 1;</script><script type="text/javascript" src="http://api.zippyshare.com/api/embed.js"></script>
.
Вопрос такой, можно ли создать Свойство инфоблока для добавления подобных кодов пользователями?
Потому как добавляться это все дело будет НЕ через админ панель, а через форму добавления элемента в публичной части.
Заранее благодарю за ответ.
ответил 08 Ноя, 13 от Mapuk (100 баллов)
00 голосов
Цитата

В результате список принимает вид показанный на рисунке 2 и скрипт не работает ...


может проактивная защита режет?
ответил 15 Фев, 14 от Hax (1,100 баллов)
00 голосов
Цитата
Melomankz пишет:
У меня немного иная задача, т.к. предполагается, что добавлять эти самые ява скрипты будут пользователи, а именно код прослушки вида -

Рекомендую (настоятельно) отказаться от оной задачи. Вы своими руками открываете сайт для XSS-атак.
ответил 06 Июнь, 14 от Pomnep (13,960 баллов)
00 голосов
Цитата
Юрий Головин пишет:
Помогите, пожалуйста...

Оформите свой код как компонент - только тогда все заработает. В таком виде редактор и будет резать. Точнее, срабатывать проактивка.
ответил 04 Окт, 14 от Pomnep (13,960 баллов)
00 голосов
Цитата
Евгений Жуков пишет:
Рекомендую (настоятельно) отказаться от оной задачи. Вы своими руками открываете сайт для XSS-атак.

Ок. Но ведь этот же самый код можно вставить в текстовой редактор в режиме text и он как пологается отобразится. Разве это не дыра?
ответил 05 Фев, 15 от EliS (100 баллов)
00 голосов
Цитата
Василий Комлев пишет:
Ок. Но ведь этот же самый код можно вставить в текстовой редактор в режиме text и он как пологается отобразится. Разве это не дыра?

Попробуйте.
ответил 18 Май, 15 от Pomnep (13,960 баллов)

Похожие вопросы

0 голосов
1 ответ
спросил 09 Фев, 13 от FARAMIR (120 баллов)
0 голосов
8 ответов
спросил 18 Июнь, 13 от ALONE (140 баллов)
0 голосов
10 ответов
спросил 24 Фев, 13 от Jekanama (320 баллов)