Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Адаптация галереи по мобильные устройства (https://javascript.ru/forum/dom-window/68203-adaptaciya-galerei-po-mobilnye-ustrojjstva.html)

webmanss 02.04.2017 10:58

Адаптация галереи по мобильные устройства
 
Всем привет!
Требуется помощь спецов.
Есть галерея изображений. По наведению на миниатюру сменяется основная картинка:
<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;
    });
}


На ПК все работает отлично.
Задача, чтобы на мобильнике она срабатывала при клике, а на ПК также при наведении.

рони 02.04.2017 13:29

webmanss,
:-?
js строка 3
$(galleryClass+' li img').on('click mouseenter touchstart',function(){

webmanss 02.04.2017 14:57

Спасибо рони, за попытку, но так не работает(

рони 02.04.2017 15:25

webmanss,
видимо у вас другой код, если
Цитата:

Сообщение от webmanss
По наведению на миниатюру сменяется основная картинка

Цитата:

Сообщение от webmanss
На ПК все работает отлично.

а в том что вы указали
Цитата:

Сообщение от webmanss
$(galleryClass+' li img').click


webmanss 02.04.2017 15:55

рони,
Извиняюсь, изначально вместо .click был .hover
При .hover по наведению работает, но только на ПК.
Вопрос, как сделать чтоб и при клике работало.

рони 02.04.2017 16:07

webmanss,
'mouseenter touchstart' --- должно работать, mouseenter для наведения в пк, touchstart для клика в мобильных

webmanss 03.04.2017 15:22

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

рони, как всегда респект!


Часовой пояс GMT +3, время: 21:17.