Фильтр по:
  

  • Страница 1 из 1
  • 1
Модератор форума: likbezz  
Скрипты и коды для юкоз - Форум аццкого кодера » Как сделать? Информация для вновь прибывших » Как сделать... » Как сделать кнопку, при клике по которой добавляется текст? (Дополнительные кнопки для форума.)
Как сделать кнопку, при клике по которой добавляется текст?
Дата: Пятница, 14.01.2011, 13:16 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


По сути, всё просто.
Идем в ПУ (панель управления сайтом - здесь и далее) » Главная » Управление дизайном » Редактирование шаблонов
Шаблон » Форум » Форма добавления сообщения
И, в нужно место, пихаем свои кнопки и скрипт, в блоке условных комментариев ... или без онного. )))
Сами кнопки - оформляем как хотим. Главное - событие onclick с одноимённой функцией.

То бишь - вместо кнопки может быть просто ссылки:

Code
<a href="javascript://"  onclick="myRdsCont(1);return false;">Вставить текст</a>

или картинка ....
Code
<img src="/_example/_img/_anime/_01_800x600.jpg" onclick="myRdsCont(1);return false;" width="10" height="10" border="0" alt="" />

....

Сам скрипт:

Quote (JavaScript)
<script type="text/javascript">
function myRdsCont(a){
var rdsCont=new Array();
rdsCont[0]='1. Замечание по персональной странице пользователя\n\n2. Суть: при нажатии на профиль одного пользователя загружается ПСП другого пользователя\n===================================================================\n1. Предложение по добавлению поля «провёл на сайте... времени »\n\n2. Суть: В профиле пользователя отображается строка, в которой отображено сколько пользователь провёл времени на сайте\n\n3. Аргумент: дата последнего входа - малоинформативна, а суммарное время пребывания на сайте показывает, что этот пользователь за полгода был на сайте 1 час, а вот этот - 52 дня, 36 часов, 40 минут. На основе этих данных можно строить частные рейтинги активности пользователей.\n\n4. Мысли по реализации: ввести соответствующий %код%';
rdsCont[1]='Правила:\nПеред публикацией сообщения убедитесь, что Ваше предложение еще не реализовано в системе;\n\n* Просим не комментировать внесённые предложения;\n* Скопируйте и заполните (не используйте bb-коды!):\n\n1. Предложение: в одну строку, чётко и ясно без пояснений!!!\n2. Зачем: здесь приведите пояснение\n3. Мысли по реализации: предложите варианты решений\n\n* Все поля обязательны к заполнению;\n* Мысли по реализации - это ТЕХНИЧЕСКАЯ сторона Вашего предложения. Все сообщения без технической части из темы будут удалены;\n* Ответы разработчиков не гарантированы.';
rdsCont[2]='Данные правила действуют на всей конференции. В отдельных разделах и форумах конференции возможно наличие собственных правил, которые уточняют и детализируют правила поведения в них. При этом данные правила остаются обязательными в любом случае.\n\nПравила вводятся для создания комфортной и конструктивной атмосферы общения. Если Вас не устраивает установленная форма общения, воздержитесь от участия в данной конференции.';
rdsCont[3]='I. Регистрация пользователей.\n\n1. Регистрируясь на форуме, пользователь соглашается выполнять данные Правила.\n\n2. Для регистрации на форуме пользователь должен предоставить действующий адрес электронной почты. Мы гарантируем конфиденциальность указанной информации.\n\n3. Выбор имени пользователя (nickname) является вашим исключительным правом. Администрация оставляет за собой право принять меры к прекращению использования nickname, если его использование нарушает общепринятые моральные и этические нормы или является оскорбительным для других пользователей форума. Запрещена регистрация nickname, схожих с уже существующими до степени, которые могут ввести в заблуждение других пользователей форума.\n\n4. Запрещена неоднократная регистрация одним пользователем, вне зависимости от целей, с которыми такая регистрация проводится. Данное нарушение является крайне серьезным и ведет к блокированию всех учетных записей.\n\n5. Если вы не проявляете активность на форуме в течение длительного времени, ваша учетная запись может быть удалена.';
return emoticon(''+rdsCont[a]+'','message');
};
</script>

Где:
myRdsCont - имя функции.
message - ID текстового поля (textarea).
\n\n - «\n» - перенос строки, «\n\n» - два переноса. Заменяет «br»/
0, 1, 2 - индекс массива - то бишь - вашей записи.
rdsCont[a] - содержание массива под индексом «a», которая = переданной с кликом цифре.
...

Кнопки:

Quote (Html)
<span style="padding-left:1px;" class="bbcode"><input type="button" title="Вставить текст" value="rdsCont0" onclick="myRdsCont(0);return false;" class="codeButtons" name="0" /></span>
<span style="padding-left:1px;" class="bbcode"><input type="button" title="Вставить текст" value="rdsCont1" onclick="myRdsCont(1);return false;" class="codeButtons" name="1" /></span>
<span style="padding-left:1px;" class="bbcode"><input type="button" title="Вставить текст" value="rdsCont2" onclick="myRdsCont(2);return false;" class="codeButtons" name="2" /></span>
<span style="padding-left:1px;" class="bbcode"><input type="button" title="Вставить текст" value="rdsCont3" onclick="myRdsCont(3);return false;" class="codeButtons" name="3" /></span>

Где:
myRdsCont(0) - имя вызываемой функции и передача в неё цифры, из которой будет выбираться данные из массива.
myRdsCont(0) - цифра - соответствует номеру записи в массиве.

...

Все вместе:

Code
<?if($BBCODES$)?>
<script type="text/javascript">
function myRdsCont(a){
var rdsCont=new Array();
rdsCont[0]='[b]1.[/b] Замечание по персональной странице пользователя\n\n[b]2. Суть:[/b] при нажатии на профиль одного пользователя загружается ПСП другого пользователя\n===================================================================\n[b]1.[/b] Предложение по добавлению поля «провёл на сайте... времени »\n\n[b]2.[/b] Суть: В профиле пользователя отображается строка, в которой отображено сколько пользователь провёл времени на сайте\n\n[b]3.[/b] Аргумент: дата последнего входа - малоинформативна, а суммарное время пребывания на сайте показывает, что этот пользователь за полгода был на сайте 1 час, а вот этот - 52 дня, 36 часов, 40 минут. На основе этих данных можно строить частные рейтинги активности пользователей.\n\n[b]4.[/b] Мысли по реализации: ввести соответствующий %код%';
rdsCont[1]='[b]Правила:[/b]\nПеред публикацией сообщения убедитесь, что Ваше предложение еще не реализовано в системе;\n\n* Просим не комментировать внесённые предложения;\n* Скопируйте и заполните (не используйте bb-коды!):\n\n1. Предложение: в одну строку, чётко и ясно без пояснений!!!\n2. Зачем: здесь приведите пояснение\n3. Мысли по реализации: предложите варианты решений\n\n* Все поля обязательны к заполнению;\n* Мысли по реализации - это ТЕХНИЧЕСКАЯ сторона Вашего предложения. Все сообщения без технической части из темы будут удалены;\n* Ответы разработчиков не гарантированы.';
rdsCont[2]='Данные правила действуют на всей конференции. В отдельных разделах и форумах конференции возможно наличие собственных правил, которые уточняют и детализируют правила поведения в них. При этом данные правила остаются обязательными в любом случае.\n\nПравила вводятся для создания комфортной и конструктивной атмосферы общения. Если Вас не устраивает установленная форма общения, воздержитесь от участия в данной конференции.';
rdsCont[3]='[b]I. Регистрация пользователей.[/b]\n\n1. Регистрируясь на форуме, пользователь соглашается выполнять данные Правила.\n\n2. Для регистрации на форуме пользователь должен предоставить действующий адрес электронной почты. Мы гарантируем конфиденциальность указанной информации.\n\n3. Выбор имени пользователя (nickname) является вашим исключительным правом. Администрация оставляет за собой право принять меры к прекращению использования nickname, если его использование нарушает общепринятые моральные и этические нормы или является оскорбительным для других пользователей форума. Запрещена регистрация nickname, схожих с уже существующими до степени, которые могут ввести в заблуждение других пользователей форума.\n\n4. Запрещена неоднократная регистрация одним пользователем, вне зависимости от целей, с которыми такая регистрация проводится. Данное нарушение является крайне серьезным и ведет к блокированию всех учетных записей.\n\n5. Если вы не проявляете активность на форуме в течение длительного времени, ваша учетная запись может быть удалена.';
return emoticon(''+rdsCont[a]+'','message');
};
</script>
<span style="padding-left:1px;" class="bbcode"><input type="button" title="Вставить текст" value="rdsCont0" onclick="myRdsCont(0);return false;" class="codeButtons" name="0" /></span>
<span style="padding-left:1px;" class="bbcode"><input type="button" title="Вставить текст" value="rdsCont1" onclick="myRdsCont(1);return false;" class="codeButtons" name="1" /></span>
<span style="padding-left:1px;" class="bbcode"><input type="button" title="Вставить текст" value="rdsCont2" onclick="myRdsCont(2);return false;" class="codeButtons" name="2" /></span>
<span style="padding-left:1px;" class="bbcode"><input type="button" title="Вставить текст" value="rdsCont3" onclick="myRdsCont(3);return false;" class="codeButtons" name="3" /></span>
<?endif?>

Или ещё лучше - скрипт в отдельный файл, а на него только ссылку:

Quote (Code)
<?if($BBCODES$)?>
<script type="text/javascript" src="/_example/_rest/_2011/p1/_rds_cont.js"></script>
<span style="padding-left:1px;" class="bbcode"><input type="button" title="Вставить текст" value="rdsCont0" onclick="myRdsCont(0);return false;" class="codeButtons" name="0" /></span>
<span style="padding-left:1px;" class="bbcode"><input type="button" title="Вставить текст" value="rdsCont1" onclick="myRdsCont(1);return false;" class="codeButtons" name="1" /></span>
<span style="padding-left:1px;" class="bbcode"><input type="button" title="Вставить текст" value="rdsCont2" onclick="myRdsCont(2);return false;" class="codeButtons" name="2" /></span>
<span style="padding-left:1px;" class="bbcode"><input type="button" title="Вставить текст" value="rdsCont3" onclick="myRdsCont(3);return false;" class="codeButtons" name="3" /></span>
<?endif?>

....

Скриншоты:
Как вставлять.

Результат:

...

Пример рабочий (этот)

Пример посложнее ... ヅ

Скрипт, “на всякий” ....
....
Важно!
Не используйте одинарных кавычек в добавляемом тексте!
Текст не должен иметь переносов, то есть весь в одну строку.
Вместо переноса строк (<br>) пишите \n.
...

Прикрепления: 9921032.png (14.3 Kb) · 6131274.png (7.3 Kb) · _rds_cont_ex.js (5.0 Kb)

 
Дата: Суббота, 15.01.2011, 17:19 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


For ....

- и внимательнее проставляйте ссылки к картинкам кнопок - vo.jpg не одно и то же vo.gif ....


 
Скрипты и коды для юкоз - Форум аццкого кодера » Как сделать? Информация для вновь прибывших » Как сделать... » Как сделать кнопку, при клике по которой добавляется текст? (Дополнительные кнопки для форума.)
  • Страница 1 из 1
  • 1
Поиск:


Мобильная версия