Chrome更新到版本73后,不会触发bxSlider的内部项目单击事件。如何为新Chrome中的元素触发.on('click')事件?
幻灯片在移动时会在Chrome中触发。FireFox中的一切都很好
<div class="slider-pager">
<div class="slider-pager__item"><img src="1.jpg" alt=""></div>
<div class="slider-pager__item"><img src="2.jpg" alt=""></div>
</div>
<script>
carouselProduct = $('.slider-pager').bxSlider({
maxSlides: 3,
minSlides: 3,
slideWidth: 90,
infiniteLoop: false,
moveSlides: 1,
slideMargin: 8,
pager: false,
nextSelector: '.slider__nav--next',
prevSelector: '.slider__nav--prev',
nextText: '?',
prevText: '?'
});
$('.slider-pager__item').on('click', function (event) {
//Don't fire in Chrome 73, works in FireFox
$('.slider-pager__item').removeClass('active');
$(this).addClass('active');
});
</script>
Run Code Online (Sandbox Code Playgroud)
JS小提琴https://jsfiddle.net/sergey_beloglazov/3ty7w12z/17/
更新: 我已经为该滑块做了一个解决方法,处理包装器onClick事件:
$('.slider-pager').parent().on('click', function (event) {
var $hover_item = $('.slider-pager__item:hover');
//Checking if we have found the element
if ($hover_item.length>0){
selectBxPagerItem($hover_item);
}
}); …
Run Code Online (Sandbox Code Playgroud)