jQuery snippets
Unbind all events
jQuery(".gallerylink").add("*").off();
or "click" event
jQuery(".gallerylink").unbind("click");
Привязка событий для элементов, даже если они были созданы после вызова этой функции
$( "table" ).delegate( "td", "click", function() {
$( this ).toggleClass( "chosen" );
});
Привязка события hover
jQuery(".model_attributes").delegate(".img_fuel", "mouseover mouseout", function (event) {
if (event.type == 'mouseover') {
// hover
} else {
// ...
}
});
Событие при перемотке страницы вниз
$(window).scroll(function () {
if ($(window).scrollTop() + $(window).height() > $(document).height() - 100) {
// todo...
}
});
Вызов функции через время после события
var searchTimer = null;
$('#search').keypress(function () {
if (searchTimer) {
window.clearTimeout(searchTimer);
}
searchTimer = window.setTimeout(function () {
searchTimer = null;
// todo
}, 1000);
});
Перемотка страницы наверх
$("html, body").animate({ scrollTop: 0 }, "slow");
Проверка видим ли элемент
var mobileIsVisible = jQuery('.mobile').is(':visible');
Имитация клика
jQuery.fn.simulateClick = function() {
return this.each(function() {
if('createEvent' in document) {
var doc = this.ownerDocument,
evt = doc.createEvent('MouseEvents');
evt.initMouseEvent('click', true, true, doc.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
this.dispatchEvent(evt);
} else {
this.click(); // IE Boss!
}
});
};