[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Подправить скрипт раскрывающегося текста
Medvedoc
Имеется скрипт, который позвоаляет сделать выпадающий текст:
<script>
var show;
function look(type){
param=document.getElementById(type);
if(param.style.display == "none") {
if(show) show.style.display = "none";
param.style.display = "block";
show = param;
}else param.style.display = "none"
}
</script>

<a onclick="look('div1'); return false;" href="#">Ссылка 1</a>
<div
style="display:none;padding-top:10px;" id="div1">
текст 1
</div>
<a
onclick="look('div2'); return false;" href="#">Ссылка 2</a>
<div
style="display:none;padding-top:10px;" id="div2">
текст 2
</div>

Но как сделать работу скрипта с label и input?
Например:
<script>
var show;
function look(type){
param=document.getElementById(type);
if(param.style.display == "none") {
if(show) show.style.display = "none";
param.style.display = "block";
show = param;
}else param.style.display = "none"
}
</script>

<input type="radio" value="31" id="radio111" name="payment_method_id"><a onclick="look('div1'); return false;" href="#"><img src="../images/foto/oplata/qiwi.jpg" /><label for="radio111" style="cursor:hand" onClick="expandit(this)">
<span
style="font-family: Arial; color: #008000; font-size: 12pt;"><strong>QIWI Кошелек</strong></span> - <span style="color: #ff0000; font-size: 10pt;">БЕЗ КОМИССИИ </span>
</label></a>
<div
style="display:none;padding-top:10px;" id="div1">
<span
style="font-family: Arial; color: #000; font-size: 10pt;"><strong>Cамый простой и удобный способ оплаты товаров в нашем магазине.</strong> Совершать платежи Вы можете со счета QIWI Кошелька, банковской картой VISA, MasterCard и наличными через терминалы, которые расположены в каждом населенном пункте России - в торгово-развлекательных центрах, магазинах, кинотеатрах и других общедоступных местах. Инструкция по оплате <a style="text-decoration: underline;" href=""><span style="color: #008000; font-size: 10pt;"><strong>здесь</strong></span>
</div>
<br/>

<a
onclick="look('div2'); return false;" href="#"><input type="radio" value="31" id="radio55" name="payment_method_id"><label for="radio55">
<img
src="../images/foto/oplata/evros.jpg" /><span style="font-family: Arial; color: #008000; font-size: 12pt;"><strong>QIWI Кошелек</strong></span> - <span style="color: #ff0000; font-size: 10pt;">БЕЗ КОМИССИИ </span>
</label></a>
<div
style="display:none;padding-top:10px;" id="div2">
<span
style="font-family: Arial; color: #000; font-size: 10pt;"><strong>Cамый простой и удобный способ оплаты товаров в нашем магазине.</strong> Совершать платежи Вы можете со счета QIWI Кошелька, банковской картой VISA, MasterCard и наличными через терминалы, которые расположены в каждом населенном пункте России - в торгово-развлекательных центрах, магазинах, кинотеатрах и других общедоступных местах. Инструкция по оплате <a style="text-decoration: underline;" href=""><span style="color: #008000; font-size: 10pt;"><strong>здесь</strong></span>
</div>

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



Спустя 12 минут, 51 секунда (16.10.2011 - 14:55) imbalance_hero написал(а):
поставь первому блоку display:block, остальным - display:none.

А радио кнопка почему вдруг должна становиться активной?

Спустя 7 минут, 1 секунда (16.10.2011 - 15:02) Medvedoc написал(а):
дело в том, что данный скрипт необходим для страницы вариантов оплаты. Если я выбираю один из вариантов оплаты, то он должен актироваться

Спустя 2 минуты, 55 секунд (16.10.2011 - 15:05) Medvedoc написал(а):
display:block не корректно начинает работать. При загрузке первый пункт скрытый текст раскрыт, но при нажатии на следующий он остается раскрытым, хотя должен свернуться ))) может условие в скрипте должно быть?

Спустя 28 минут, 9 секунд (16.10.2011 - 15:33) Medvedoc написал(а):
imbalance_hero, помогите со скриптом

Спустя 8 минут, 11 секунд (16.10.2011 - 15:41) imbalance_hero написал(а):
Medvedoc
document.getElementsByTagName - получаеешь массив блоков, которые надо скрыть, их всех скрываешь, а потом открываешь какой надо. Только для этого все блоки должны иметь 1 общий name.
Можешь ко всем ссылаться по классу.

Спустя 2 минуты, 53 секунды (16.10.2011 - 15:44) Medvedoc написал(а):
я в скриптах не силен, только планирую начать изучать? не можете показать готовый код? Пожалйста!!!

Спустя 14 минут, 3 секунды (16.10.2011 - 15:58) imbalance_hero написал(а):
Medvedoc
ааа, ну с этого бы и начинал smile.gif Халявки у нас на форуме нет. Форум либо для программистов, либо для клиентов. Либо делай сам, а мы тебе поможем в исправлении твоих скриптов, либо ты платишь, и мы делаем за тебя smile.gif

Спустя 4 минуты, 17 секунд (16.10.2011 - 16:02) Medvedoc написал(а):
))) так я и просил сразу исправить. сколько стоит правка скрипта?

Спустя 1 минута, 56 секунд (16.10.2011 - 16:04) Medvedoc написал(а):
вот мой скрипт, но у него не активируется радиокнопка

<script>
var show;
function look(type){
param=document.getElementById(type);
if(param.style.display == "none") {
if(show) show.style.display = "none";
param.style.display = "block";
show = param;
}else param.style.display = "none"
}
</script>
<a onclick="look('div1'); return false;" href="#"><input type="radio" value="20" id="radio8" name="payment_method_id"><label for="radio8">
<table><tr><td><img src="../images/foto/oplata/nal.jpg" /></td>
<td valign="middle"><span style="font-family: Arial; color: #008000; font-size: 12pt;"><strong>Наличными при получении</strong></span></td></tr></table>
</label></a>
<div style="display:block;padding-top:10px;" id="div1">
текст 1
</div>
<br/>
<a onclick="look('div2'); return false;" href="#"><input type="radio" value="20" id="radio8" name="payment_method_id"><label for="radio8" style="cursor:hand" onClick="expandit(this)">
<table><tr><td><img src="../images/foto/oplata/nal.jpg" /></td>
<td valign="middle"><span style="font-family: Arial; color: #008000; font-size: 12pt;"><strong>Наличными при получении</strong></span></td></tr></table>
</label></a>
<div style="display:none;padding-top:10px;" id="div2">
текст 1
</div>

Спустя 3 минуты, 10 секунд (16.10.2011 - 16:07) imbalance_hero написал(а):
Тебе тему перенести в раздел проекты? То есть ты согласен платить за работу?

Спустя 5 минут, 30 секунд (16.10.2011 - 16:13) Medvedoc написал(а):
а ты можешь подправить мой скрипт? мне единственное что надо, сделать чтобы input при выборе label активировалась

когда код такой
<a onclick="look('div1'); return false;" href="#"><input type="radio" value="20" id="radio8" name="payment_method_id"><label for="radio8">
<table><tr><td><img src="../images/foto/oplata/nal.jpg" /></td>
<td valign="middle"><span style="font-family: Arial; color: #008000; font-size: 12pt;"><strong>Наличными при получении</strong></span></td></tr></table>
</label></a>
<div style="display:block;padding-top:10px;" id="div1">
текст 1
</div>
input не работает

а когда просто
<input type="radio" value="20" id="radio8" name="payment_method_id"><label for="radio8">
<table><tr><td><img src="../images/foto/oplata/nal.jpg" /></td>
<td valign="middle"><span style="font-family: Arial; color: #008000; font-size: 12pt;"><strong>Наличными при получении</strong></span></td></tr></table>
</label>

то все работает

Спустя 2 минуты, 38 секунд (16.10.2011 - 16:15) imbalance_hero написал(а):
Вообщем, я переместил, если кто-то захочет заработать, то отзовётся.
В целом, я не занимаюсь мелочью.

Спустя 3 минуты, 37 секунд (16.10.2011 - 16:19) Medvedoc написал(а):
понятно

Спустя 3 минуты, 44 секунды (16.10.2011 - 16:23) m4a1fox написал(а):
Medvedoc
Еще, раз! Что нужно сделать?

Спустя 1 минута, 22 секунды (16.10.2011 - 16:24) imbalance_hero написал(а):
m4a1fox
Условие переделать, поставить на нажатие <label> чтобы и кнопка активной становилась, и блок раскрывался, другие закрывались. Тут по добру надо нормально переписать smile.gif

Спустя 2 минуты, 58 секунд (16.10.2011 - 16:27) m4a1fox написал(а):
imbalance_hero
Мдя.... а чего не поюзать jQuery? - это уже к ТС обращаюсЬ! ИМХО - гораздо проще!

Спустя 59 минут, 45 секунд (16.10.2011 - 17:27) imbalance_hero написал(а):
m4a1fox
А может весь сайт переведём на Joomla, чтобы реализовать форму обратной связи?
Ты предлагаешь подключать ОГРОМНЕЙШУЮ библиотику для реализации одного из ПЕРВЫХ УРОКОВ по JS.
Сам скрипт пишется в 5-6 строк на чистом JS, зачем нужна в данном случае огромнейшая библиотека? Типо не умеем нормально программировать?

Спустя 1 час, 12 минут, 27 секунд (16.10.2011 - 18:39) Medvedoc написал(а):
чтобы работал input

Спустя 9 минут, 10 секунд (16.10.2011 - 18:48) imbalance_hero написал(а):
Medvedoc
Тебе, как заказчику, без разницы на чём будет исполнено. Это спор программистов о рациональности использования того или иного кода.

Спустя 20 минут, 14 секунд (16.10.2011 - 19:09) Medvedoc написал(а):
вы мне скажите сколько будет стоит перепрограммирования пяти строчек

Спустя 4 минуты, 7 секунд (16.10.2011 - 19:13) Medvedoc написал(а):
<script>
var show;
function look(type){
param=document.getElementById(type);
if(param.style.display == "none") {
if(show) show.style.display = "none";
param.style.display = "block";
show = param;
}else param.style.display = "none"
}
</script>


<table>
<tr>
<td
style="padding-top: 5px;" valign="top">
<input
type="radio" value="31" id="radio1" checked="checked" name="payment_method_id" onclick="look('div1')" />
</td>
<td
valign="middle">
<label
for="radio1" style="cursor:hand" onclick="look('div1')">
<table>
<tr>
<td>
<img
src="http://www.cyberforum.ru/images/foto/oplata/qiwi.jpg" />
</td>
<td
valign="middle">
<span
style="font-family: Arial; color: #008000; font-size: 12pt;"><strong>QIWI Кошелек</strong></span> - <span style="color: #ff0000; font-size: 10pt;">БЕЗ КОМИССИИ </span>
</td>
</tr>
</table>
</label>
<div
style="margin-right: 30px; text-align: justify;" style=&{head}; id="div1">
<br/><span
style="font-family: Arial; color: #000; font-size: 10pt;"><strong>Cамый простой и удобный способ оплаты товаров в нашем магазине.</strong> Совершать платежи Вы можете со счета QIWI Кошелька, банковской картой VISA, MasterCard и наличными через терминалы, которые расположены в каждом населенном пункте России - в торгово-развлекательных центрах, магазинах, кинотеатрах и других общедоступных местах. Инструкция по оплате <a style="text-decoration: underline;" href=""><span style="color: #008000; font-size: 10pt;"><strong>здесь</strong></span></a>.
</div>
</td>
</tr>
</table>
<br/>


Пока вы спорили я уже нашел отчасти выход. Мне только надо сделать так, чтобы при нажатии на label активировался input. Когда я нажимаю на input, у меня активируется сама радиокнопка и выпадает текст. Когда я нажимаю на label, то выпадает только текст. Но надо сделать чтобы радиокнопка в этом случае тоже активировалась

Спустя 25 минут, 8 секунд (16.10.2011 - 19:38) Medvedoc написал(а):
imbalance_hero, может поможешь доделать код? мне кажется там всего лишь строчку надо поменять в самом скрипте, чтобы при нажатии на label активировался input
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.