У меня две проблемы с событиями onclick, они чем-то похожи, поэтому я спрошу их обоих здесь.
Во-первых:
У меня есть флажок в div. Вход имеет функцию onchange, а div имеет функцию onclick.
<div onclick="doSomething()">
<input type="checkbox" onchange="doSomethingElse()" />
</div>
Проблема в том, что, когда я ставлю / снимаю флажок, срабатывает одновременно doSomething () и doSomethingElse (). Любые идеи о том, как предотвратить это? Я попытался сделать onchange = "doSomethingElse (событие)" и функцию в doSomethingElse (e) у меня была e.stopPropagation (); и это не сработало.
Второе:
У меня есть изображение в div. У div есть функция onclick, а у изображения - нет. Изображение намеренно больше, чем div, и выходит за пределы div.
-----------------------
| image |
| --------------- |
| | div | |
| | | |
| --------------- |
| |
-----------------------
Я хочу, чтобы онклик срабатывал только в том случае, если пользователь щелкает в пределах границ блока div. Тем не менее, событие onclick также запускается, если вы щелкнете мышью по части изображения, которая вышла наружу из div ... Любые идеи?
Первый вопрос для меня важнее, чем второй. Но если кто-то может ответить на оба вопроса, это было бы здорово!
Заранее спасибо за помощь,
Matt