Иногда вы можете использовать e.stoppropagation (); e.preventdefault (); Чтобы предотвратить пузырьковые события и выполнять события по умолчанию. Но добавление событий не может быть предотвращено.
При каких обстоятельствах мы должны предотвратить добавление событий?
например:
Нажмите «Оформление». Когда вы управляете этим, сама кассета имеет свои собственные события, но вы должны определить, следует ли войти в систему, прежде чем проверить.
Мы могли бы написать это:
JS -код
Кода -копия выглядит следующим образом:
if (islogin) {// судить, следует ли войти в систему
console.log ("Нет входа")
}еще{
// Код, связанный с оформлением
}
Если вы нажмете «Моя домашняя страница», у вас также будет решение для входа в систему
Войдите в систему кода суждения
if (islogin) {// судить, следует ли войти в систему
console.log ("Нет входа")
}еще{
// личный центр
}
Если есть больше суждений в системе. Будет ли больше кодов, подобных указанным выше? Позже я узнал, что метод StopmidiatiatePropagation () предотвращает добавление событий. Приведенный выше вопрос не является проблемой.
Важно: убедитесь, что вход определяет, что событие является первым связанным событием.
Демо -код
Кода -копия выглядит следующим образом:
<! Doctype html>
<html>
<head lang = "en">
<meta charset = "utf-8">
<title> Демо </title>
<script src = "http://lib.sinaapp.com/js/jquery/1.7.2/jquery.min.js"> </script>
</head>
<тело>
<a href = "#"> проверка </a>
<ul>
<li> Добавить в фавориты </li>
<li> Другие платят </li>
<li> Добавить, чтобы купить автомобиль </li>
<li> Моя домашняя страница </li>
</ul>
<Скрипт>
// СВЯЗАТЬ СВЕДЕНИЕ
$ (". ISLOGIN"). ON ("CLICK", FUNCTION (e) {
if (true) {// Войдите в суд
оповещение («Нет входа в систему»);
e.stopimmediatepropagation ();
}
вернуть ложь;
});
$ (". Bill"). On ("click", function () {
Alert ("Checkout Content, связанный!");
});
$ (". A1"). On ("click", function () {
оповещение ("A1");
});
$ (". A2"). On ("click", function () {
оповещение ("A2");
});
$ (". A3"). On ("click", function () {
оповещение («добавлен в корзину»);
});
$ (". A4"). On ("click", function () {
оповещение («Существует решение для входа»);
});
</script>
</body>
</html>
Фактически, JQUERY предоставляет нам метод просмотра событий $ ._ DATA ($ ('. ISLOGIN'). GET (0)), Open Firebug и введите его в консоли.
JS -код
$ ._ Data ($ ('. ISLOGIN'). GET (0))
Вы увидите следующее:
JS -код
Object {Events = {...}, handle = function ()}
Нажмите, чтобы увидеть массив событий, чтобы облегчить просмотр, какие события связаны с элементом.