о событии onmouseout - PullRequest
       1

о событии onmouseout

2 голосов
/ 10 июня 2010

как следующие коды:

<div id="outerBox" style="border:1px solid red;width:300;height:300" onmouseout="alert('out')">
<div id="innerBox" style="border:1px solid blue;width:50;height:50">inner</div>
</div>

почему, когда я перемещаю мышь на "innerBox", это было предупреждение о срабатывании ('out')?

Я хочу, чтобы мышь не выдавала «externalBox» (только «out»), мышь на «innerBox» не запускает предупреждение.

жарко, чтобы сделать это?

спасибо всем:)

Ответы [ 2 ]

4 голосов
/ 10 июня 2010

Это стандартное поведение для событий mouseout и mouseover.Internet Explorer фактически усиливает конкуренцию здесь (для разнообразия), потому что он имеет запатентованные события, которые обеспечивают поведение, которое вы ищете;onmouseenter и onmouseleave.Основным недостатком является то, что эти события не являются частью стандарта, и другие браузеры их не реализовали.

Если вы используете jQuery , он имеет хорошую кросс-браузерную реализацию с .mouseleave().В любом случае, хорошая идея - использовать фреймворк для обработки кросс-браузерных событий.Это не обязательно должен быть jQuery, но я не уверен, есть ли у других событие mouseleave.

Если вы не используете jQuery или среду, предоставляющую смоделированное событие, см. http://ecmascript.stchur.com/2007/03/15/mouseenter-and-mouseleave-events-for-firefox-and-other-non-ie-browsers/

2 голосов
/ 10 июня 2010

Я нашел здесь что-то, что выглядит как нужная вам функция: http://codingrecipes.com/onmouseout-fix-on-nested-elements-javascript

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...