Посмотрите на следующий код:
<div onmousedown="alert('onmousedown');">
<div onclick="alert('onclick');"></div>
</div>
Мой вопрос в том, что вы можете отключить событие onmousedown, когда активен onclick-событие дочернего элемента div?
Если вы используете mousedown
и mouseup
вместо того, чтобы click
на дочерний div, вы можете попробовать алгоритм примерно так:
var flag;
onchildmousedown() {
flag = true;
}
onchildmouseup() {
flag = false;
// other click processing on child
}
onparentmousedown() {
if (flag) {
flag = false;
return;
}
// continue for processing
}
Я не уверен, работает ли это так, как я его не тестировал. Но вы получаете эту идею и можете ее соответствующим образом настроить.