Скрыть объект с помощью javascript
Здравствуйте.
Помогите, пожалуйста, с javascript. Есть код: <script type="text/javascript"> jQuery(document).ready(function() { jQuery('.first-and-second-carousel').jcarousel(); jQuery('#third-carousel').jcarousel({ vertical: true }); }); function imgs(img) { for(i=0;i<50;i++) { if (document.getElementById('imgs_'+i)) { document.getElementById('imgs_'+i).style.display=' none'; } } document.getElementById('imgs_'+img).style.display ='block'; } </script> <div id='imgs_%i%'><p id='thumb'><a href='%Path%' rel='clearbox[Pic,,3,,stop]'><img src='%Preview%' border='0'></a></p></div> Значения в %...% подставляются автоматически. id='imgs_%i%' - имеют значения в итоге: id='imgs_0', id='imgs_1', id='imgs_2' и т.д. Нужно для id='imgs_%i%' с помощью javascript'а указать, что если это не нулевой объект (id='imgs_0') - скрыть объект (аналог style='display: none;'). Заранее спасибо. |
Пишите в скрипте:
document.onload = function () { var elem= document.getElementsByTagName('div') for(i=0;i<elem.length;i++) { if(elem[i].id!='imgs_0') { document.getElementsByTagName('div')[i].style.display = 'none' } } } |
Видимо я неправильно вставила Ваш код...
http://soconsult.cz/estate/test/test_90.html Все равно выводятся все картинки. Посмотрите, пожалуйста, куда нужно вставить? Заранее спасибо. |
Вы вствили код до моего редактирования, переправьте(я там забыл скобку поставить)
|
Я отредактировала, но что-то не так...
Не работает. Ваш код нужно вставить внутрь моего скрипта или отдельно? |
Все ваше замените на это:
<script type="text/javascript"> jQuery(document).ready(function() { jQuery('.first-and-second-carousel').jcarousel(); jQuery('#third-carousel').jcarousel({ vertical: true }); imgs( 0 ); }); function imgs( img ) { jQuery('[id^="imgs_"]').hide(); jQuery('#imgs_' + img ).show(); } </script> |
Цитата:
|
Deff,
к примеру вот: <img onclick='imgs(this.id);' id='0' src='/images/cheh/estateimg/preview_larsen_3mes_4.jpg' width='70' alt='' /> |
Цитата:
|
Deff, не знаю как у тебя, но у меня отладчик при каждом клике на мини-картинку ловит срабатывание функции imgs() а значит она все же нужна там.
|
devote, с меня +
http://hostjs-mybb2011.narod.ru/devote_test_90.htm Просёк, там нижний сладер всем Управляет |
Огромнейшее всем спасибо, особенную благодарность хочу выразить Deff!
|
tatiana-js,
Пасибо, но у меня была непродуманная логика - Скрипт devote учёл все нюансы |
C кодом devote все работает, но есть одно НО...
При открытии страницы показываются все картинки, потом схлапываются в одну (imgs_0 остается, остальные не видны). При использовании css: <style type="text/css"> #main_content div[id^="imgs_"]{ display:none; } #main_content #imgs_0{ display:block; } </style> картинки сразу скрыты... По крайней мере я не вижу загрузки всех картинок. А учитывая, что картинок будет до 50, через стили мне вариант подходит. |
tatiana-js,
подозрение, что стоит поставить и css и скрипт, сss не было соориентировано на нижний слайдер(я его вообще как то упустил из виду css - оперативно скроет излишек изо в верхнем, а нижний слайдер, позволяет менять стартовую картинку слайдшоу в верхнем |
Часовой пояс GMT +3, время: 17:33. |