Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: JS: стиль для всеx img с известным классом
 
 автор: Гончий пёс   (19.12.2007 в 13:24)   письмо автору
 
 

Фотогалерейка.
Ряд превьюшек и большая картинка. При клике на превьюху меняется src большой картинки. Возникла необходимость выделить в ряду превьюшек открытую в данный момент картинку, напрмер, рамкой.

<script>
function change_img(v,from){
    
    document.getElementById('gallery_big_image').src = v;    
    // КАКАЯ-ТО_КОНСТРКУЦИЯ.style='border:0px;'; 
    from.style.border="1px solid #ff0000;"
    
}
</script>

<div id="littlegallery">
    <div id="smallimages">
        <img src='img/1.jpg' class='smallimg' onclick="change_img('img/1.jpg',this);" height="50">
        <img src='img/2.jpg' class='smallimg' onclick="change_img('img/2.jpg',this);" height="50">
        <img src='img/3.jpg' class='smallimg' onclick="change_img('img/3.jpg',this);" height="50">
        <img src='img/4.jpg' class='smallimg' onclick="change_img('img/4.jpg',this);" height="50">
    </div>
    
    <div id="bigimage">
    <img src="img/1.jpg" id="gallery_big_image">
    </div>
</div>


Принцип прост - обходим все превьюхи, стираем стили, потом вызванной назначаем рамку.
Вопрос: как обойти все img-и, если известно, что у всех class='smallimg'. Видимо, с помощью "КАКОЙ-ТО_КОНСТРУКЦИИ" ;-)

Или может есть другой способ это сделать?

Да, и еще...
Конструкция

from.style="border: 1px solid #ff0000;"

просто волшебно работает в опере и только в опере

Напротив,

from.style.border="1px solid #ff0000;"

прекрасно чувствует себя только в FF и в IE, но в IE рамка не красная, а черная... Но есть:-)

   
 
 автор: Fear.86   (19.12.2007 в 14:51)   письмо автору
 
   для: Гончий пёс   (19.12.2007 в 13:24)
 

Все картинки в документе хранятся в коллекции: document.images, вам надо просто циклом пробежатся по всем, и проверить на соответствие класса:

for(i=0;i<document.images.length;i++){
      if(document.images[i].className == 'вашкласс'){
            document.images[i].style = 'border:0';
      }
}

   
 
 автор: Гончий пёс   (19.12.2007 в 16:07)   письмо автору
 
   для: Fear.86   (19.12.2007 в 14:51)
 

О! Гран мерси!

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования