Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.07.2017, 12:06
Аспирант
Отправить личное сообщение для sergey24 Посмотреть профиль Найти все сообщения от sergey24
 
Регистрация: 04.11.2016
Сообщений: 56

Как применить скрипт к элементу, который находится в пределах блока?
Имеется на одной странице несколько галерей (галерею взял отсюда), при клике на картинку сменяется картинка во всех галереях, а надо только в той, которой принадлежит картинка.

<div class="gallery">
    <div class="panel">
        <img class="largeImage" src="images/image_01_large.jpg" />
        <div class="description">Игра Rage</div>
    </div>

    <div class="thumbs">
        <img src="images/image_01_thumb.jpg" alt="Описание 1" />
        <img src="images/image_02_thumb.jpg" alt="Описание 2" />
        <img src="images/image_03_thumb.jpg" alt="Описание 3" />
        <img src="images/image_04_thumb.jpg" alt="Описание 4" />
        <img src="images/image_05_thumb.jpg" alt="Описание 5" />
    </div>
</div>

$('.thumbs').delegate('img','click', function(){
    $('.largeImage').attr('src',$(this).attr('src').replace('thumb','large'));
    $('.description').html($(this).attr('alt'));
});
Ответить с цитированием
  #2 (permalink)  
Старый 01.07.2017, 12:17
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

Сообщение от sergey24
delegate

jquery/1.6.1

взять jquery новее и поставить клик на gallery
Ответить с цитированием
  #3 (permalink)  
Старый 01.07.2017, 12:23
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

sergey24,
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

  <script>
$(function() {
   $('.gallery').on('click', '.thumbs img', function(event){
    var parent = event.delegateTarget;
    $('.largeImage', parent).attr('src',$(this).attr('src').replace('thumb','large'));
    $('.description', parent).html($(this).attr('alt'));
});
});
  </script>
Ответить с цитированием
  #4 (permalink)  
Старый 01.07.2017, 12:31
Аспирант
Отправить личное сообщение для sergey24 Посмотреть профиль Найти все сообщения от sergey24
 
Регистрация: 04.11.2016
Сообщений: 56

рони,
Спасибо, всё отлично работает
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как этот скрипт применить к бэкграунду вместо цвета текста? JAMLIGHT Ваши сайты и скрипты 5 22.02.2017 18:31
Открытие div блока при первом визите на сайт Nushaba Общие вопросы Javascript 28 20.12.2013 21:24
Как применить css ко всем элементам внутри блока MaxB jQuery 12 28.05.2010 07:56
Как изменить скрипт, что бы им его можно было использовать для нужной страницы Nick50_70 Общие вопросы Javascript 0 28.04.2009 23:30
А как зделать скрипт, чтобы например скрипт 1 заменялся скриптом 2? yura371 Общие вопросы Javascript 3 06.01.2009 22:40