Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 删除jQuery悬停效果_Javascript_Html_Hover - Fatal编程技术网

Javascript 删除jQuery悬停效果

Javascript 删除jQuery悬停效果,javascript,html,hover,Javascript,Html,Hover,当鼠标悬停在链接上时,假设发生了效果X。 当鼠标移走时,如何恢复原始图像 例如,我尝试使用javascript修改链接行为。鼠标悬停时链接会更改,但如何恢复更改 HTML代码: <ul id="nav"> <li id="a1"><a href="#">original link 1</a></li> <li id="a2"><a href="#">hover link 1</a>&l

当鼠标悬停在链接上时,假设发生了效果
X
。 当鼠标移走时,如何恢复原始图像

例如,我尝试使用javascript修改链接行为。鼠标悬停时链接会更改,但如何恢复更改

HTML代码:

<ul id="nav">
    <li id="a1"><a href="#">original link 1</a></li>
    <li id="a2"><a href="#">hover link 1</a></li>
    <li id="b1"><a href="#">original link 1</a></li>
    <li id="b2"><a href="#">hover link 1</a></li>
    <li id="c1"><a href="#">original link 1</a></li>
    <li id="c2"><a href="#">hover link 1</a></li>
</ul>

在更正HTML标记后,请改用CSS。这将为您提供更好的性能,更少的代码,而且更“合适”,因为视觉细节应该留给CSS

#nav li:hover {
  display: none;
}
更新:在尝试进一步理解您的标记后,我更清楚地看到您正在尝试做什么。您似乎想隐藏下一个
  • 元素。在这种情况下,请使用CSS邻接选择器:

    #nav li:hover + li {
      display: none;
    }
    

    在更正HTML标记后,请改用CSS。这将为您提供更好的性能,更少的代码,而且更“合适”,因为视觉细节应该留给CSS

    #nav li:hover {
      display: none;
    }
    
    更新:在尝试进一步理解您的标记后,我更清楚地看到您正在尝试做什么。您似乎想隐藏下一个
  • 元素。在这种情况下,请使用CSS邻接选择器:

    #nav li:hover + li {
      display: none;
    }
    
    试一试

    试一试


    使用鼠标盖和鼠标出代替悬停

    使用鼠标盖和鼠标出代替悬停

    您编写的代码相当于$(选择器)

    使用有效的标记

    <ul id="nav">
        <li><a href="#">hover link 1</a></li>
        <li><a href="#">hover link 2</a></li>
    </ul>
    
    从jQuery API文档:

    调用$(选择器).hover(handlerIn,handlerOut)是以下的缩写: $(选择器).mouseenter(handlerIn.mouseleave(handlerOut)


    您编写的代码相当于
    $(选择器).on(“mouseenter mouseleave”,handlerInOut)

    使用有效的标记

    <ul id="nav">
        <li><a href="#">hover link 1</a></li>
        <li><a href="#">hover link 2</a></li>
    </ul>
    
    从jQuery API文档:

    调用$(选择器).hover(handlerIn,handlerOut)是以下的缩写: $(选择器).mouseenter(handlerIn.mouseleave(handlerOut)


    你的标记绝对无效
  • 元素应该是列表元素的直接子元素,如
    ,仅限
    。@xan您阅读了
    .hover()
    函数的说明了吗?@VisioN:对不起,我有点赶时间。现在检查我的代码。你的标记绝对无效
  • 元素应该是列表元素的直接子元素,如
    ,仅限
    。@xan您阅读了
    .hover()
    函数的说明了吗?@VisioN:对不起,我有点赶时间。现在检查我的代码。+1有不同的建议,但是当他悬停在链接上时,css本身可能无法满足要求。诚然,代码示例留给我们很大的想象空间。对于不同的建议,+1,但当他悬停在链接上时,仅css可能无法满足要求。诚然,代码示例让人有很大的想象力。