jQuery實現的滑鼠在連結懸浮背景變色程式碼

antzone發表於2017-03-03

網頁的導航效果一般都追求一些效果,最簡單的一種就是滑鼠放在連結上的時候,會出現背景變色效果,雖然簡單,但是也能夠給網頁增色不少,下面就通過程式碼例項簡單介紹一下如何實現此效果。

程式碼例項如下:

[HTML] 純文字檢視 複製程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<style type="text/css">
ul, li{list-style:none;}
#nav li 
{
  display:inline-block;
  margin:0 5px;
  background:#ccc;
  padding:0 10px;
  line-height:24px;
  font-size:12px;
  float:left;
}
#nav li.h_nav_over 
{
  background:red;
  color:#fff;
}
#nav li.h_nav_over a{color:#fff;}
a{text-decoration:none;}
</style>
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript">
$(function(){
  $("#nav>ul>li").mouseover(function(){
    $("#nav>ul>li").each(function(i){
      $(this).removeClass("h_nav_over");
    });
    $(this).addClass("h_nav_over");
  })
});
</script>
</head>
<body>
<div id="nav">
  <ul>
    <li><a  href="#" >螞蟻部落一</a></li>
    <li><a  href="#" >螞蟻部落二</a></li>
    <li><a  href="#" >螞蟻部落三</a></li>
    <li><a  href="#" >螞蟻部落四</a></li>
    <li><a  href="#" >螞蟻部落五</a></li>
    <li><a  href="#" >螞蟻部落六</a></li>
  </ul>
</div>
</body>
</html>

以上程式碼實現了我們的要求,當滑鼠懸浮在連結的時候能夠實現背景變色,下面介紹一下實現過程。

一.程式碼註釋:

1.$(function(){}),當穩當結構完全載入完畢再去執行函式中的程式碼。

2.$("#nav>ul>li").mouseover(function(){}),為元素註冊mouseover事件處理函式。

3.$("#nav>ul>li").each(function(i){$(this).removeClass("h_nav_over");}),遍歷每一個匹配元素集合中的DOM元素,並且移出每一個DOM元素上的class屬性值h_nav_over,如果沒有這一步,那麼滑鼠所滑過的連結都會變紅。this是指向集合中的每一個dom元素。

4.$(this).addClass("h_nav_over"),新增class屬性。

二.相關閱讀:

1.mouseover事件可以參閱jQuery mouseover事件一章節。 

2.each()函式可以參閱jQuery each()一章節。 

3.removeClass()函式可以參閱jQuery removeClass()一章節。 

4.addClass()函式可以參閱jQuery addClass()一章節。

5.$("#nav>ul>li")可以參閱jQuery parent>child一章節。 

相關文章