Описание: Сохраняет остальных обработчиков от выполнения и предотвращает событие от перехода вверх по дереву DOM.
event.stopImmediatePropagation()
Добавлена в версию: 1.3
В дополнение к удержанию дополнительных обработчиков от выполнения элемента,
этот метод также останавливает переход по неявному вызову event.stopPropagation().
Для простого предотвращения события от перехода к предку элементов, но позволения другим обработчикам событий быть выполненным на тот же элемент, мы можем использовать event.stopPropagation() вместо этого.
Используйте event.isImmediatePropagationStopped()
для определения если этот метод был когда-либо вызван (на этот объект события).
Пример
Предотвращает других обработчиков событий от вызова.
$("p").click(function(event){
event.stopImmediatePropagation();
});
$("p").click(function(event){
// This function won't be executed
$(this).css("background-color", "#f00");
});
$("div").click(function(event) {
// This function will be executed
$(this).css("background-color", "#f00");
});
Полный код
Предотвращает других обработчиков событий от вызова.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<style>
p { height: 30px; width: 150px; background-color: #ccf; }
div {height: 30px; width: 150px; background-color: #cfc; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript" language="javascript">
$(document).ready(function(){
$("p").click(function(event){
event.stopImmediatePropagation();
});
$("p").click(function(event){
// This function won't be executed
$(this).css("background-color", "#f00");
});
$("div").click(function(event) {
// This function will be executed
$(this).css("background-color", "#f00");
});
});
</script>
</head>
<body>
<p>paragraph</p>
<div>division</div>
</body>
</html>
Была ли эта информация полезной?

