2017-01-29 4 views
0

Мне нужно выполнить какое-либо действие, когда определенный класс элементов прокручивается вверх, и я использую JQuery для этого. Однако событие просто не срабатывало бы, несмотря ни на что.Событие прокрутки JQuery, которое не запускается

HTML:

<div class="container-fluid article-matter" id="info-grid"> 
    <div class="row"> 
     <div class="col col-md-6 col-lg-2"> 
      <div class="imagecontainer"><img /></div> 
      <div class="imagecontainer"><img /></div> 
      <div class="imagecontainer"><img /></div> 
     </div> 
     <div class="col col-md-6 col-lg-2"> 
      <div class="imagecontainer"><img /></div> 
      <div class="imagecontainer"><img /></div> 
      <div class="imagecontainer"><img /></div> 
     </div> 
     <div class="col col-md-6 col-lg-2"> 
      <div class="imagecontainer"><img /></div> 
      <div class="imagecontainer"><img /></div> 
      <div class="imagecontainer"><img /></div> 
     </div> 
     <div class="col col-md-6 col-lg-2"> 
      <div class="imagecontainer"><img /></div> 
      <div class="imagecontainer"><img /></div> 
      <div class="imagecontainer"><img /></div> 
     </div> 
     <div class="col col-md-6 col-lg-2"> 
      <div class="imagecontainer"><img /></div> 
      <div class="imagecontainer"><img /></div> 
      <div class="imagecontainer"><img /></div> 
     </div> 
     <div class="col col-md-6 col-lg-2"> 
      <div class="imagecontainer"><img /></div> 
      <div class="imagecontainer"><img /></div> 
     </div> 
    </div> 
</div> 

JQuery (идея 1):

$('div#info-grid div.row div.col').each(function() { 
    $(this).on('scroll', function(){ 
     console.log('test'); 
    }); 
}); 

JQuery (идея 2):

$('div#info-grid div.row div.col').on('scroll', function(){ 
    console.log('test'); 
}); 

какие входы?

+1

Вы уверены, что вы «скроллинг» на этих элементах? Например - вам нужно иметь переполнение: автоматически установить для полосы прокрутки, чтобы появиться и т. Д. –

+0

scrollbars? Я не думаю, что мне нужны полосы прокрутки. – TheLearner

+0

https://cdn.meme.am/cache/instances/folder308/500x/27987308.jpg –

ответ

0

Итак, если у вас нет на самом деле «прокрутки», вы можете слушать другие события.

Что-то вроде:

$('#foo').bind('mousewheel', function(e) { 
    if(e.originalEvent.wheelDelta/120 > 0) { 
     alert('up'); 
    } else { 
     alert('down'); 
    } 
}); 

Вы можете скрыть/изменение полосы прокрутки и т.д.

эти вопросы также нравится: Use jQuery to check mousewheel event without scrollbar

Смежные вопросы