Jquery:强大的选择器<二>

今天跟着资料做了一个示例,为什么我感觉自己做的没书上的好看呢?好吧,我承认自己对css样式只懂一点皮毛,我也不准备深度的去学习它,因为……公司有美工嘛!

这个小示例只是实现了元素的隐藏和显示、元素class属性的添加与移除,HTML代码如下:

<div class="SubCategoryBox">
<ul>
<li><a href="#">佳能</a><i>(30440)</i></li>
<li><a href="#">索尼</a><i>(30440)</i></li>
<li><a href="#">三星</a><i>(30440)</i></li>
<li><a href="#">尼康</a><i>(30440)</i></li>
<li><a href="#">松下</a><i>(30440)</i></li>
<li><a href="#">卡西欧</a><i>(30440)</i></li>
<li><a href="#">富士</a><i>(30440)</i></li>
<li><a href="#">柯达</a><i>(30440)</i></li>
<li><a href="#">宾得</a><i>(30440)</i></li>
<li><a href="#">理光</a><i>(30440)</i></li>
<li><a href="#">奥林巴斯</a><i>(30440)</i></li>
<li><a href="#">明基</a><i>(30440)</i></li>
<li><a href="#">爱国者</a><i>(30440)</i></li>
<li><a href="#">其它品牌相机</a><i>(30440)</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()是对自身的集合元素进行筛选。

时间: 2024-12-16 08:46:41

Jquery:强大的选择器<二>的相关文章

jquery强大的选择器---来源《锋利的jquery》

一.基本选择器 1.#id  根据给定的id匹配一个元素 2..class  根据给定的类名匹配元素 3.element  根据给定的元素名匹配元素 4.*  匹配所有元素 5.selectore1,.selectore2,#selectore3  将每一个选择器匹配到的元素合并后一起返回 二.层次选择器 6.ancestor descendant  选取ancestor元素里的所有descendant(后代)元素 7.parent>child  选取parent元素下的child(子)元素,与

jquery强大的选择器和javascript 的对比。

案列demo:http://codepen.io/tianzi77/pen/yNJVaM 首先写结构: <body> <ul id="nav"> <li class="current">tianzi</li> <li>tianzi</li> <li>tianzi</li> </ul> <div id="content"> <

jQuery开发之选择器二

1,基本选择器 基本选择器是jQuery中最常用的选择器,也是最简单的选择器.它通过id,class,和标签名来查找DOM元素. 2,层次选择器 可以使用next()方法来代替$('prev + next') 选择器,如下表所示: 可以使用nextAll()方法来代替$('prev ~ siblings') 选择器,如下表所示: 3,过滤选择器 过滤选择器主要是通过特定的过滤规则来筛选所需的DOM元素,过滤规则与CSS中的伪类选择器语法相同,即选择器以一个(:)开头.按照不同的过滤规则,过滤选择

Jquery的一、二、三章的笔记

第一章:Jquery的基础 JQuery - 是一个JavaScript的框架(函数库) 一.Jquery的使用 1.下载Jquery框架:http://jquery.com 2.在页面引用jquery-x.x.x.js文件 <script type="text/javascript" src="js/jquery-1.7.2.js"></script> 3.使用 二.第一个Jquery程序$() $(document).ready(func

Jquery:强大的选择器&lt;一&gt;

今天回家之后,学习的是Jquery的选择器.选择器作为Jquery的优势之一,确实让我感觉到了它的强大.Jquery选择器分为基本选择器.层次选择器.过滤选择器和表单选择器,下面我一一介绍这四种选择器. 一.基本选择器 看了书中关于选择器的介绍,我才知道,自己平日里用的大部分都是基本选择器.基本选择器中包含id选择器.class选择器.标签选择器.复合选择器和"*"选择器. $("#id") 选取所有属性id等于"id"的元素. $("

jQuery学习笔记(二):this相关问题及选择器

上一节的遗留问题,关于this的相关问题,先来解决一下. this的相关问题 this指代的是什么 这个应该是比较好理解的,this就是指代当前操作的DOM对象. 在jQuery中,this可以用于单个对象,也可以用于多个对象. $('btn').click(function(){ alert(this.innerHTML); // 单个对象,this指代当前id为btn的DOM对象 }); $('div').each(function(index){ alert(this.innerHTML)

jQuery学习笔记(二)使用选择器一

jQuery选择器是jQuery框架的基础,jQuery对事件的处理.DOM操作.CSS动态控制.Ajax通信.动画设计都是在选择器基础上进行的 注意,在jQuery中通过各种选择器和方法获取的结果集合实际上都是一个jQuery对象 基本选择器 说明 返回值 #id 根据给定的ID匹配一个元素,如果选择器中包含特殊字符,可以用两个斜杠转义 单个元素 element 根据指定的元素类型名称选择该类型所有元素 同类型集合元素 .class 根据指定的类名选择所有同类元素 集合元素 * 在所限定的范围

jquery常用的选择器

jquery用选择器来得到jquery对象,进而进行一些操作. 一.基本选择器 1.id选择器 2.类选择器 3.元素名选择器 4.并集选择器 5.交集选择器 二.层级选择器 父元素下的某个子元素或者某些子元素: 三.过滤选择器

Webform——JQuery基础(选择器、事件、DOM操作)

一.选择器 1.基本选择器 ①id选择器:#       ②class选择器:.       ③标签名选择:标签名 ④并列选择:用,隔开          ⑤后代选择:用空格隔开 代码用法展示:   2.过滤选择器 (1).基本过滤 ①首个::first        ②尾个::last       ③任意个::eq(索引号)        ④大于::gt(索引号) ⑤小于::lt(索引号)         ⑥排除::not(选择器)         ⑦奇数:odd           ⑧偶数: