Как я могу сделать все внутри функции .on(), если прошло только 500 мс с момента последнего нажатия на элемент? Я пытаюсь выполнить эту работу, чтобы вы не могли быстро стрелять по элементу. Я хочу, чтобы клики регистрировались только после того, как прошло 500 м с момента последнего клика.Разрешить только щелчок элемента после того, как прошло 500 мс
$(document).on('click', 'a.next, a.prev, nav ul a', function(e){
e.preventDefault();
//Set side nav item to be active
var page = $(this).data("page");
var sectionClicked = $(this).data("section");
var currentSection = $("body").attr("data-current-section");
var currentPage = $("body").attr("data-current-page");
if($(this).hasClass("side_nav_link")){
var section = $(this).data("section");
ga('send', 'event', {
'eventCategory': 'Side Nav',
'eventAction': 'Click',
'eventLabel': section
});
}
if($(this).hasClass("next")){
ga('send', 'event', {
'eventCategory': 'Prev/Next Links',
'eventAction': 'Click',
'eventLabel': 'Next'
});
}
if($(this).hasClass("prev")){
ga('send', 'event', {
'eventCategory': 'Prev/Next Links',
'eventAction': 'Click',
'eventLabel': 'Prev'
});
}
loadContent(page, sectionClicked, currentSection, currentPage);
});
Если вы используете lodash, вы можете использовать [ 'throttle'] (https://lodash.com/docs/4.17.4#throttle). – SimpleJ
Я бы отключил и снова включил кнопку, так что пользователь знает, что она отключена, а не просто не отвечает. Убедитесь, что у вас есть визуальная подсказка. –