Jquery:强大的选择器<二>
今天跟着资料做了一个示例,为什么我感觉自己做的没书上的好看呢?好吧,我承认自己对css样式只懂一点皮毛,我也不准备深度的去学习它,因为……公司有美工嘛!
这个小示例只是实现了元素的隐藏和显示、元素class属性的添加与移除,HTML代码如下:
<div class="SubCategoryBox">
<ul>
<li><a href="#">佳能</a><i>()</i></li>
<li><a href="#">索尼</a><i>()</i></li>
<li><a href="#">三星</a><i>()</i></li>
<li><a href="#">尼康</a><i>()</i></li>
<li><a href="#">松下</a><i>()</i></li>
<li><a href="#">卡西欧</a><i>()</i></li>
<li><a href="#">富士</a><i>()</i></li>
<li><a href="#">柯达</a><i>()</i></li>
<li><a href="#">宾得</a><i>()</i></li>
<li><a href="#">理光</a><i>()</i></li>
<li><a href="#">奥林巴斯</a><i>()</i></li>
<li><a href="#">明基</a><i>()</i></li>
<li><a href="#">爱国者</a><i>()</i></li>
<li><a href="#">其它品牌相机</a><i>()</i></li>
</ul>
<br />
</div>
<div class="showmore">
<a href="#"><span>显示全部品牌</span></a>
</div>
HTML
js代码如下:
<script type="text/javascript">
$(function () {
var item = $('ul li:gt(5):not(:last)');//选取所有品牌中索引大于5的且不包含最后一项的元素。
item.hide();//隐藏元素
var btnToogle = $('div.showmore>a');//选取按钮
btnToogle.click(
function () {
if (item.is(":visible"))//判断选取的元素是否隐藏
{
item.hide();
$(this).find('span').text("显示全部品牌");//其实一直不怎么懂this的用法,有时间了会去查查资料的
$('ul li').removeClass("promoted");//移除class样式
}
else
{
item.show();
$(this).find('span').text("显示精简品牌");
$('ul li').filter(":contains('三星'),:contains('索尼'),:contains('奥林巴斯')").addClass("promoted")
}
return false;//超链接不跳转
}
)
}
);
</script>
js
点击按钮,隐藏元素时的效果图如下:

点击按钮,显示元素时的效果图如下:

其实今天的收获应该有三点:
1、自己动手做了一次,记忆更深刻了一点。
2、明白了什么是DOM,以前总是用document,也知道DOM这个词,但是不了解它,今天查了一下资料,专业一点的解释是:文档对象模型(Document Object Model,DOM)是一种用于HTML和XML文档的编程接口。它给文档提供了一种结构化的表示方法,可以改变文档的内容和呈现方式。我对它的理解是:类似于HTML中的标签,一层嵌套一层,而最外面的是<html>标签,如果把这些嵌套看成是树,那么<html>标签就是根节点,这是我们看到的,其实我们看不到的是document才是这棵树的根节点,我们通过document可以访问下面的任何子节点。
3、find()和filter()的区别。这是我以前不知道的,find()是在子元素中查找匹配元素,而filter()是对自身的集合元素进行筛选。
Jquery:强大的选择器<二>的更多相关文章
- jQuery自学笔记(二):jQuery选择器
一.简单选择器 ID选择器:$('#box') 元素标签名:$('div') 类选择器:$('.box') jQuery提供了length和size()两种方法查看返回的元素,可验证ID在页面只出现一 ...
- jQuery学习笔记(二):this相关问题及选择器
上一节的遗留问题,关于this的相关问题,先来解决一下. this的相关问题 this指代的是什么 这个应该是比较好理解的,this就是指代当前操作的DOM对象. 在jQuery中,this可以用于单 ...
- webform(九)——JQuery基础(选择器、事件、DOM操作)
JQuery -- 一个js函数包 一.选择器 1.基本选择器 ①id选择器:# ②class选择器:. ③标签名选择:标签名 ④并列选择:用,隔开 ⑤后代选 ...
- jQuery.validator 详解二
前言:上一篇详细的介绍了jQuery.validator( 版本v1.13.0 )的验证规则,这一篇重点讲述它的源码结构,及如何来对元素进行验证,错误消息提示的内部实现 一.插件结构(组织方式) 在讲 ...
- JQuery:JQuery语法、选择器、事件处理
JQuery语法: 通过 jQuery,您可以选取(查询,query) HTML 元素,并对它们执行"操作"(actions). 一.语法:jQuery 语法是通过选取 HTM ...
- jQuery的dom操作(二)转
addClass() 向匹配的元素添加指定的类名. after() 在匹配的元素之后插入内容. append() 向匹配的元素内部追加内容. appendTo() 向匹配的元素内部追加内容. attr ...
- 23、jQuery九类选择器/jQuery常用Method-API/jQuery常用Event-API
1)掌握jQuery九类选择器及应用 2)掌握jQuery常用Method-API 3)掌握jQuery常用Event-API 一)jQuery九类选择器[参见jQueryAPI.chm手册] 目 ...
- JQuery总结:选择器归纳、DOM遍历和事件处理、DOM完全操作和动画 (转)
JQuery总结:选择器归纳.DOM遍历和事件处理.DOM完全操作和动画 转至元数据结尾 我们后台可能用到的页面一般都是用jquery取值赋值的,发现一片不错的文章 目录 JQuery总结一:选择器归 ...
- jQuery中的选择器《思维导图》
学习jQuery的课程中,我对jQuery中的选择器有了更深的认识,它的简洁写法,完美的兼容性,可靠的处理机制,都让我们省了很多事, 下面是我在学习过程中对jQuery选择器写的思维导图(全屏查看:& ...
随机推荐
- (转)Facade模式
Facade模式要求一个子系统的外部与其内部的通信必须通过一个统一的Facade对象进行.Facade模式提供一个高层次的接口,使得子系统更易于使用. 就如同医院的接待员一样,Facade模式的Fac ...
- excel运行最多行数
2003及以前版本为65536(即6万多)行,256列2007版:1048576(即1百零多万)行,16384(即1千多)列
- displaytag 动态列实现
这种动态列的实现方法来自displaytag-examples-1.2.war提供的示例中,实际上下载下来的zip文件中不仅有各种jar包,还有这个包含各种例子的war包,是学习displaytag的 ...
- linux 使用ptrace函数时找不到头文件 .h 或者找不到某个宏的解决方法
例如: #include <stdio.h> #include <sys/ptrace.h> #include <sys/types.h> #include < ...
- C# TextBox控件 显示大量数据
串口通信:在使用TextBox空间显示数据时,因为要显示大量的接收到的数据,当数据量大且快速(串口1ms发送一条数据)时,使用+=的方式仍然会造成界面的卡顿(已使用多线程处理),但使用AppendTe ...
- Spring 学习笔记01
以一个论坛登陆模块来讲解如何使用spring 登陆功能虽然简单,但是模块虽然很小,但是基本包括了一般的web应用的操作.涵盖了持久层数据访问(数据库相关操作).业务层事务管理(数据库操作回滚等).展现 ...
- lib,dll区别 及 VS中如何添加lib,dll
1.加载lib/头文件 分两种方法: (1)适用于当前项目 第一步:项目->属性->C/C++->常规->附加包含目录(浏览.h文件的路径) 添加包含文件 第二步:项目-> ...
- asp.net跨域上传文件
前端: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" con ...
- 个性A标签
问题: 前段时间,小琳同学问我A标签为啥alert出来的是它的href? 示例: 先来两个标签比较一下. <a id="a" href="http://www.ba ...
- Javascript 判断浏览器是否为IE的最短方法
作者:idd.chiang 发布时间:April 29, 2010 分类:Javascript/AS 在网上有幸看到夷人通过IE与非IE浏览器对垂直制表符支持特性搞出的一段简短的条件: var ie ...