Помогите отловить собыие клика на любом участке сайта кроме заданного блока
например есть блок
<div class="click">Хайдук</div> нужно отловить событие по любому участку сайта кроме данного блока, такое реализовано например на фейсбуке в уведомлениях рядом с логотипом с фейсом. |
способ 1)
// включаем обработчик в разрешённой зоне
$("#haiduk").mouseout(function(){
$("body").on("click",onClick);
});
// выключаем обработчик в запрещённой зоне
$("#haiduk").mouseover(function(){
$("body").off("click",onClick);
})
// обработчик
function onClick(){
alert ("Не кликай, кликуном станешь");
}
способ 2) (самый надёжный) получаем координаты запрещённой области метод $("#haiduk").offset() при щелчке мыши смотрим не находиться ли курсор в запрещённой зоне если не находиться то всё окей, делаем чего нибудь полезное Если находиться, неделаем нечего |
Цитата:
$(document).on("click", function () {
console.log('click!');
});
$('.click').on("click", function (e) {
if (e.stopPropagation) {
e.stopPropagation()
} else {
e.cancelBubble = true
}
});
|
| Часовой пояс GMT +3, время: 03:38. |