Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.04.2017, 10:58
Аспирант
Отправить личное сообщение для webmanss Посмотреть профиль Найти все сообщения от webmanss
 
Регистрация: 17.02.2013
Сообщений: 34

Адаптация галереи по мобильные устройства
Всем привет!
Требуется помощь спецов.
Есть галерея изображений. По наведению на миниатюру сменяется основная картинка:
<div class="gallery-1">
	<div class="gal-main"><img src="/images/001.jpg" class="main-img" /></div>
	<div class="gal-tumb" >
        <ul>
	  		<li><img src="/images/thumb/001.jpg" /></li>
	 		<li><img src="/images/thumb/002.jpg" /></li>
	  		<li><img src="/images/thumb/003.jpg" /></li>
     	</ul>
    </div>
</div>

$(document).ready(function() {
	var galleryClass = '.gallery-1';
	$(galleryClass+' li img').click(function(){
		var $gallery = $(this).parents(galleryClass);
		$('.main-img',$gallery).attr('src',$(this).attr('src').replace('thumb/', ''));
	});
	var imgSwap = [];
	 $(galleryClass+' li img').each(function(){
		imgUrl = this.src.replace('thumb/', '');
		imgSwap.push(imgUrl);
	});
	$(imgSwap).preload();
});
$.fn.preload = function() {
    this.each(function(){
        $('<img/>')[0].src = this;
    });
}


На ПК все работает отлично.
Задача, чтобы на мобильнике она срабатывала при клике, а на ПК также при наведении.
Ответить с цитированием
  #2 (permalink)  
Старый 02.04.2017, 13:29
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

webmanss,

js строка 3
$(galleryClass+' li img').on('click mouseenter touchstart',function(){
Ответить с цитированием
  #3 (permalink)  
Старый 02.04.2017, 14:57
Аспирант
Отправить личное сообщение для webmanss Посмотреть профиль Найти все сообщения от webmanss
 
Регистрация: 17.02.2013
Сообщений: 34

Спасибо рони, за попытку, но так не работает(
Ответить с цитированием
  #4 (permalink)  
Старый 02.04.2017, 15:25
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

webmanss,
видимо у вас другой код, если
Сообщение от webmanss
По наведению на миниатюру сменяется основная картинка
Сообщение от webmanss
На ПК все работает отлично.
а в том что вы указали
Сообщение от webmanss
$(galleryClass+' li img').click
Ответить с цитированием
  #5 (permalink)  
Старый 02.04.2017, 15:55
Аспирант
Отправить личное сообщение для webmanss Посмотреть профиль Найти все сообщения от webmanss
 
Регистрация: 17.02.2013
Сообщений: 34

рони,
Извиняюсь, изначально вместо .click был .hover
При .hover по наведению работает, но только на ПК.
Вопрос, как сделать чтоб и при клике работало.
Ответить с цитированием
  #6 (permalink)  
Старый 02.04.2017, 16:07
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

webmanss,
'mouseenter touchstart' --- должно работать, mouseenter для наведения в пк, touchstart для клика в мобильных
Ответить с цитированием
  #7 (permalink)  
Старый 03.04.2017, 15:22
Аспирант
Отправить личное сообщение для webmanss Посмотреть профиль Найти все сообщения от webmanss
 
Регистрация: 17.02.2013
Сообщений: 34

Скрипт работает. Если кому пригодится. Проблема была в разметке.
Соседний DIV блок мешал.

рони, как всегда респект!
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подогнать размер окна под мобильные устройства chever Javascript под браузер 4 04.05.2015 11:28
Драйверы и устройства FanAizu Оффтопик 1 20.02.2014 07:18
Разработка под мобильные устройства J_O_K_E_R Мобильный JavaScript 0 11.01.2014 17:46
gismeteo и мобильные устройства. sssppp6 Серверные языки и технологии 2 07.05.2012 18:16
Как сделать 2 галереи JQuery на одной странице? orendzi jQuery 8 16.07.2011 15:22