« Обратно к странице событий
die( [тип], [функция] )
Добавлено в jQuery 1.3: Действие данной функции противоположно методу
live — удаляет привязанные «живые» события.
Вызванная без аргументов, данная функция удалит все привязанные события.
Пользовательские события, привязанные с помощью live, также могут быть удалены этой функцией.
Если указан тип события, то все события заданного типа будут удалены.
Если передается функция, которая была передана ранее в live, то удаляется только тот конкретный обработчик.
Аргументы:
| тип (необязательно) |
Строка |
|
| Тип «живого» события. |
| функция (необязательно) |
Функция |
|
| Функция. |
Примеры:
| Name |
Type |
Привязывает и удаляет событие на желтую кнопку.
function aClick() {
$("div").show().fadeOut("slow");
}
$("#bind").click(function () {
$("#theone").live("click", aClick)
.text("Can Click!");
});
$("#unbind").click(function () {
$("#theone").die("click", aClick)
.text("Does nothing...");
});
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function(){
function aClick() {
$("div").show().fadeOut("slow");
}
$("#bind").click(function () {
$("#theone").live("click", aClick)
.text("Can Click!");
});
$("#unbind").click(function () {
$("#theone").die("click", aClick)
.text("Does nothing...");
});
});
</script>
<style>
button { margin:5px; }
button#theone { color:red; background:yellow; }
</style>
</head>
<body>
<button id="theone">Does nothing...</button>
<button id="bind">Bind Click</button>
<button id="unbind">Unbind Click</button>
<div style="display:none;">Click!</div>
</body>
</html>
Удаляет все привязанные «живые» события из всех параграфов:
Удаляет все привязанные «живые» события click из всех параграфов:
Для того, чтобы удалить только последний привязанный обработчик, передайте функцию в качестве второго аргумента:
var foo = function () {
// code to handle some kind of event
};
$("p").live("click", foo); // ... now foo will be called when paragraphs are clicked ...
$("p").die("click", foo); // ... foo will no longer be called.