Всегда считалось, что в веб-разработке события двойного щелчка используются редко. До недавнего времени проекту требовалось привязать к кнопке два события — щелчок и двойной щелчок. Сначала я думал, что это всего лишь вопрос привязки двух событий к кнопке... но позже я понял, что думал слишком просто: когда срабатывает событие двойного щелчка, клик тоже срабатывает~.
После некоторых исследований я наконец решил проблему, используя метод отложенного выполнения setTimeout в JS, чтобы задержать выполнение клика на 300 миллисекунд. Код выглядит следующим образом:
Скопируйте код кода следующим образом:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http ://www.w3.org/1999/xhtml"><head>
<title></title>
<mce:script src="jquery-1.6.min.js" mce_src="jquery-1.6.min.js" type="text/javascript"></mce:script>
<mce:script type="text/javascript">
<!--
$(функция () {
вар число = 0;
вар timeFunName = ноль;
$("кнопка").bind("клик", функция () {
// Отменяем метод, который не был выполнен во время последней задержки
ClearTimeout (timeFunName);
// Задержка 300 миллисекунд для выполнения клика
timeFunName = setTimeout(функция () {
число++;
$("textarea").val($("textarea").val() + "th" + num + "th событие, имя события: click/n");
}, 300); }).bind("dblclick", function () {
// Отменяем метод, который не был выполнен во время последней задержки
ClearTimeout (timeFunName);
число++;
$("textarea").val($("textarea").val() + "th" + num + "th событие, имя события: двойной щелчок/n");
});
});
// --></mce:script>
</голова>
<тело>
<textarea rows="20" cols="50"></textarea><button type="button">Отправить</button></body></html>