вот вопрос о связывании событий кликов с jQuery, который я пытаюсь понять.
Скажем, у меня есть элемент блока, к которому я привязываю клик, с тегом абзаца внутри него.
<div id="testClick" style="width:200px; height:100px'>
<p>test click</p>
</div>
и я привязываю щелчок к элементу div:
$('#testClick').bind('click', function(e){
//with parent div (via e.target), do something
});
сейчас, если я нажму на текст внутри тега p, e.target = элемент p, и если я нажмув div (вокруг, а не в тексте) e.target = элемент div.Таким образом, e.target = объект, по которому щелкнули - то есть событие также связано с любыми дочерними элементами указанного элемента.
Это ожидаемо, но мне нужно работать с родительским div.и использование e.target не является надежным способом получения ссылки на div, потому что в зависимости от того, где внутри div происходит щелчок, e.target возвращает другой элемент.Если я использую e.target.parent для получения ссылки на div, то это происходит сбой при щелчке в div вокруг текста.
Нет ли простого способа заставить e.target всегда и только возвращатьточный элемент, с которым изначально был связан клик?
(например, в ActionScript есть свойство "mouseChildren", которое предотвращает запуск событий для дочерних элементов связанных элементов)
(рассмотрите весь приведенный выше псевдокод)