用JQuery實現簡單的菜單隱藏於切換
阿新 • • 發佈:2019-03-15
簡單的 col 隱藏 type remove git hidden pac tst
《鋒利的JQuery》第一個demo<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<script type="text/javascript" src="jquery-3.3.1.min.js" ></script>
<title>Document</title>
<style>
div.showall>a:hover{
color: rgb(235, 147, 39)
}
.promoted{
background-color: deepskyblue;
width: 10%;
}
</style>
</head>
<body >
<div class="container">
<ul>
<li><a href="#">Html</a></li>
<li><a href="#">Css</a></li>
<li><a href="#">JavaScript</a></li>
<li><a href="#"> JQuery</a></li>
<li><a href="#">BootStrap</a></li>
<li><a href="#">Ajax</a></li>
<li><a href="#">Node.js</a></li>
<li><a href="#">Http</a></li>
<li><a href="#">Tcp/Ip</a></li>
<li><a href="#">Vue</a></li>
<li><a href="#">Github</a></li>
<li><a href="#">Webpack</a></li>
<li><a href="#">Json</a></li>
<li><a href="#">OOP</a></li>
<li><a href="#">Less</a></li>
</ul>
<div class="showall">
<a href="more.html"><span>顯示全部</span></a>
<!-- 平穩退化:如果用戶禁用了js 就將整個頁面重載來顯示完整列表 -->
</div>
</div>
<script>
var $hiddenitems = $("ul li:gt(5):not(:last)");//獲取ul下索引值大於5的li元素,再去掉最後一個符合的li
$hiddenitems.hide();
var showbtn = $("div.showall> a");//不能用.showall div
showbtn.click(function(){
if($hiddenitems.is(":visible")){
$hiddenitems.hide();
$(this).find("span").css("color","red")
.text("收起列表");
$("ul li").filter(":contains(‘JQuery‘),:contains(‘Node‘)")
.removeClass("promoted");
}else{
$hiddenitems.show();
$(this).find("span").css("color","deepskyblue")
.text("顯示全部");
$("ul li").filter(":contains(‘JQuery‘),:contains(‘Node‘)")
.addClass("promoted");
}
return false;
})
//《鋒利的JQuery》中提到了使用toggle方法,我試了一下發現並不可以
//查閱後得知jquery1.9以後toggle方法只做切換隱藏顯示動畫用了,toggle([speed],[easing],[fn])
</script>
</body>
</html>
用JQuery實現簡單的菜單隱藏於切換