如下圖所示,這是我要的效果。就是,當鼠標移動到鏈接上面的時候,彈出框框。當鼠標移走時框框消失。
但是在實現(xiàn)這個效果的時候發(fā)生如標題所示的C蛋的事情。那就是當我鼠標移動到框框中文字上面的時候,框框也消失了。

image.png
百度了一下,發(fā)現(xiàn)許多人也存在這樣的問題。解決的方法的各不相同。我差點就被帶進坑。所以說百度須謹慎啊。
最終我發(fā)現(xiàn)了一個最快捷,最方便的方法。那就是不要用onmouseout ,而要用onmouseleave。區(qū)別就在于他們的觸發(fā)條件。
onmouseout 的觸發(fā)條件是:當光標到達div以外的元素或者div內(nèi)部的元素(說div形象一點)。onmouseleave的觸發(fā)條件是:當光標劃過div邊框出去的那一刻。
所以這里我順便總結(jié)一下吧:<td>元素里面有一個<a>元素,對于onMouseOut和onMouseOver事件,瀏覽器會把<a>和<td>看做兩個不同的object。從而當鼠標在兩者之間移動時,會激發(fā)這兩個事件。所以簡而言之用onmouseenter和onmouseleave來代 替onMouseOver、onMouseOut就行了