У меня есть строка таблицы, в которой действие Javascript прикреплено к щелчкам мыши в любом месте строки таблицы:
<tr onmousedown="someAction(this)">
<td>cell 1</td>
<td>cell 2</td>
<td><a href="page2.html">cell 3</a></td>
</tr>
Если пользователь щелкает в любом месте строки, я хочу действие Javascript, someAction (это), чтобы следовать.Однако если пользователь щелкает ссылку на страницу 2, то я хочу, чтобы действие игнорировалось, а ссылка следовала.
К сожалению, сначала наблюдается действие, которое перемещает позицию связанного текста как раз длянажмите, чтобы быть сброшенным.Другими словами, пользователь в действительности не может щелкнуть ссылку и перейти на страницу 2. В этом случае
Как отключить действие mousedown для кликов по ссылке?
Спасибо!
Обновление: Основываясь на ответах, я в конечном счете включил следующий JavaScript в конец HTML, который зарегистрировал обработчик событий, чтобы остановить распространение, как это было предложено, например:
...
<script type="text/javascript" language="javascript">
//<![CDATA[
function stopEvent(ev) {
ev.stopPropagation();
}
var links = document.getElementsByTagName('a');
for (var i = 0; i < links.length; i++) {
links[i].addEventListener("onmousedown", stopEvent, false);
}
//]]>
</html>
Это могло бы быть легко включено в событие загрузки документа, но раздел CDATA уже был необходим по другим причинам, поэтому я добавил сюда то, что мне было нужно.
Спасибо за помощь и хорошие предложения!:)