`

2009.12.17(4)——jquery例子 全部显示与精简显示

阅读更多
2009.12.17(4)——jquery例子 全部显示与精简显示
我希望的效果是,10个东西 我先显示6个,然后点击“全部显示”就把10个东西全部显示,这时,“全部显

示”按钮变为“精简显示”,再点击,就又会显示6个,如此反复
先看html代码
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 

"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>数码相机</title>
<style type="text/css">
 *{ margin:0; padding:0;}
body {font-size:12px;text-align:center;}
a { color:#04D; text-decoration:none;}
a:hover { color:#F50; text-decoration:underline;}
.SubCategoryBox {width:600px; margin:0 auto; text-align:center;margin-top:40px;}
.SubCategoryBox ul { list-style:none;}
.SubCategoryBox ul li { display:block; float:left; width:200px; line-height:20px;}
.showmore { clear:both; text-align:center;padding-top:10px;}
.showmore a { display:block; width:120px; margin:0 auto; line-height:24px; border:1px solid 

#AAA;}
.showmore a span { padding-left:15px; background:url(images/down.gif) no-repeat 0 0;}
.promoted a { color:#F50;}
</style>
</head>
<body>
<div class="SubCategoryBox">
	<ul>
		<li ><a href="#">佳能</a><i>(30440) </i></li>

		<li ><a href="#">索尼</a><i>(27220) </i></li>
		<li ><a href="#">三星</a><i>(20808) </i></li>
		<li ><a href="#">尼康</a><i>(17821) </i></li>
		<li ><a href="#">松下</a><i>(12289) </i></li>
		<li ><a href="#">卡西欧</a><i>(8242) </i></li>

		<li ><a href="#">富士</a><i>(14894) </i></li>
		<li ><a href="#">柯达</a><i>(9520) </i></li>
		<li ><a href="#">宾得</a><i>(2195) </i></li>
		<li ><a href="#">理光</a><i>(4114) </i></li>
		<li ><a href="#">奥林巴斯</a><i>(12205) </i></li>

		<li ><a href="#">明基</a><i>(1466) </i></li>
		<li ><a href="#">爱国者</a><i>(3091) </i></li>
		<li ><a href="#">其它品牌相机</a><i>(7275) </i></li>
	</ul>
	<div class="showmore">
		<a href="more.html"><span>全部显示品牌</span></a>

	</div>
</div>
</body>
</html>

1.首先,隐藏一些li,比如说7个以后都隐藏,但是最后一个“其他相机”是不能隐藏的
var $hide = $('ul li:gt(5):not(:last)');
$hide.hide();

2.点击“全部显示”显示所有的
var $show = $('div.showmore > a');
$show.click(function(){
	$hide.show();
});

3.把“全部显示”改为“精简显示”
$('.showmore a span').text("精简显示");

4.然后可以加点效果,比如说高亮显示一些品牌
$('ul li').filter(".contains('佳能')",":contains('爱国者')").addClass("promoted");

5.有个问题,大家会发现,因为那个“全部显示”是一个超链接,就会跳转到其他页面,所以,我们要给浏

览器返回一个false,这五步代码如下
$(function(){
		var $hide = $('ul li:gt(7):not(:last)');
		$hide.hide();//隐藏
		var $show = $('div.showmore > a');
		$show.click(function(){
			$hide.show();//显示
			//改变提示内容
			$('.showmore a span').css("background","url(images/up.gif)no-repeat 0 

0").text("精简显示品牌");
			//高亮显示
			$('ul li').filter(":contains('佳能'),:contains('柯达'),:contains('爱国

者')").addClass("promoted");
			return false;//return false让浏览器认为用户没有单击该链接
		});
	})
6.然后,应该是单机“精简显示”,只显示一部分,但是,有个问题 我们点击的是同一个链接,这如何来区

分呢?我们可以根据是hide还是show来区分
if($hide.is(":visible")){}else{}//判断是否显示


jquery的全部代码如下:
<script type="text/javascript" src="scripts/jquery-1.3.2.js"></script>
<script type="text/javascript">
	$(function(){
		var $hide = $('ul li:gt(7):not(:last)');
		$hide.hide();//隐藏
		var $show = $('div.showmore > a');
		$show.click(function(){
			if($hide.is(":visible")){
				$hide.hide();
				$('.showmore a span').css("background","url(images/down.gif)no

-repeat 0 0").text("全部显示品牌");
				//不高亮显示
				$('ul li').removeClass("promoted");
			}else{
				$hide.show();//显示
				//改变提示内容
				$('.showmore a span').css("background","url(images/up.gif)no-

repeat 0 0").text("精简显示品牌");
				//高亮显示
				$('ul li').filter(":contains('佳能'),:contains('柯

达'),:contains('爱国者')").addClass("promoted");
			}
			
			return false;//return false让浏览器认为用户没有单击该链接
		});
	})
	
</script>
分享到:
评论

相关推荐

    基于因子分析的我国A股上市...争力评价——以医药企业为例_张澳.caj

    基于因子分析的我国A股上市...争力评价——以医药企业为例_张澳.caj

    jquery引用文件——jquery.js

    《jQuery核心原理与应用实践》 jQuery,作为一个广泛使用的JavaScript库,自2006年发布以来,就以其简洁的API和强大的功能深受开发者喜爱。本文将深入探讨jQuery的核心原理,以及如何在实际项目中有效地引用和使用...

    jquery-1.9.1.js 、jquery-1.9.1.min.js 【官方jquery包 js】

    《jQuery 1.9.1:深入理解与应用》 jQuery,这个JavaScript库,自2006年发布以来,以其简洁的API和强大的功能,迅速成为开发者们首选的前端工具之一。本篇文章将深入探讨jQuery 1.9.1版本,包括其核心特性、性能...

    jquery-3.3.1.js和jquery-3.3.1.min.js.zip

    然而,对于生产环境,通常我们会选择使用压缩版的jQuery——jquery-3.3.1.min.js。这个版本是经过Minification处理的,即将源代码中不必要的空格、换行和注释去除,甚至对变量名进行混淆,以达到最小化文件大小的...

    jquery-3.0.0.js 、jquery-3.0.0.min.js 【官方jquery包 js】

    《jQuery 3.0.0:深入理解与应用》 jQuery,这个JavaScript库,自2006年发布以来,已经成为了Web开发中不可或缺的一部分。它以其简洁的API和强大的功能,极大地简化了DOM操作、事件处理、动画效果以及Ajax交互。在...

    jquery.media.js

    jquery.media.js

    免费jquery.printArea.js下载

    此外,值得注意的是,jQuery.printArea.js的源文件只有一个——`jquery.printArea.js`,这意味着它的引入和使用非常简洁。只需在页面中引入jQuery库和此插件,然后按照上述方式编写代码,即可实现强大的打印功能。 ...

    jquery.mobile.custom.min(v1.4.2).js

    jquery.mobile.custom.min.js v1.4.2 偶然发现这文件不好找还有挺贵,所以传一个

    jquery.pagination.js 下载

    jquery.pagination.js 下载,优秀的jquery分页插件,使用IP代理国外网站下载而来

    jquery.form.js下载

    jquery.form.js jquery.form.js

    python项目——Word助手.zip

    python项目——Word助手.zip python项目——Word助手.zip python项目——Word助手.zip python项目——Word助手.zip python项目——Word助手.zip python项目——Word助手.zip python项目——Word助手.zip python项目...

    JDK_1.7,amd64_ubuntu,安装包,直接下载安装即可完成1.7版本的SDK包。原生安装,不用配置环境变量,

    文件说明: 1,安装说明.txt ——————————安装手册 2,jdk-170.tar.gz ————...4,check_java.sh———————————版本核对 注意:使用命令接口切换时,需要将自己配置的环境变量注释或者删掉!!!

    jquery-ui-1.9.2.custom.min.js

    在我们讨论的文件 "jquery-ui-1.9.2.custom.min.js" 中,我们可以看到这是该库的一个特定版本——1.9.2的自定义最小化版本。这个文件的核心在于“定制”和“最小化”,这两个特点使得它在实际项目中更具灵活性和效率...

    jquery-ui-1.10..3.min.js

    jquery-ui-1.10.3.js 版本 1积分下载 jquery-ui-1.10.3.js 版本 1积分下载 jquery-ui-1.10.3.js 版本 1积分下载

    jQuery.extend和jQuery.fn.extend的区别

    在这个例子中,`sayHello`方法被添加到jQuery对象的原型上,使得所有的jQuery实例(即选择器返回的集合)都能调用这个方法。 两者之间的主要区别在于作用对象:`jQuery.extend`作用于静态对象,用于合并和扩展配置...

    2020.4.11-措施项目——模板工程量计算规则.ppt

    2020.4.11-措施项目——模板工程量计算规则

    jquery.timers-1.2.js

    jquery.timers-1.2.js 定时器插件

    python项目——RCQ读者书库.zip

    python项目——RCQ读者书库.zip python项目——RCQ读者书库.zip python项目——RCQ读者书库.zip python项目——RCQ读者书库.zip python项目——RCQ读者书库.zip python项目——RCQ读者书库.zip python项目——RCQ...

    微信小程序——新闻客户端(截图+源码).zip

    微信小程序——新闻客户端(截图+源码).zip 微信小程序——新闻客户端(截图+源码).zip 微信小程序——新闻客户端(截图+源码).zip 微信小程序——新闻客户端(截图+源码).zip 微信小程序——新闻客户端(截图+...

Global site tag (gtag.js) - Google Analytics