由于去实习过后,发现真正的后台也要懂前端啊,感觉javascript不懂,但是之前用过jQuery感觉不错,很方便,省去了一些内部函数的实现。

看了这一本《深入PHP与jQuery开发》,感觉深入浅出,值得推荐。

Chapter1.jQuery简介

1.jQuery工作方式本质

先创建一个jQuery对象实例,然后对传递给该实例的参数表达式求值,最后根据这个值作出相应的响应或者修改自身。

2.利用CSS语法选择dom元素(基本选择器)

我们知道,jQuery说白了就是对网页上的内容进行选择器的新建与操作。

  • 通过标签类型选择元素

直接选用标签的元素来作为选择器:

$("p")
  • 通过class选择元素

通用格式:.class

$(".foo")
  • 通过ID选择元素

通用格式:#id

$("#bar")
  • 使用组合选择题

只要元素匹配组合选择器中任意一个选择器,都会被选中并出现在返回结果中:

$("p.foo,#bar")

3.层次选择器

  • 选择后代元素

祖先元素  后代元素

例:选择body下的span元素

>>>$("body span")
  • 选择子元素

父元素>子元素(只匹配直接子元素)

>>>$("body>span")
>>>[]
  • 选择下一个兄弟(next)元素

起始元素标识+下一个兄弟元素标识

注意是在DOM中选择一个元素之后紧跟的下一个兄弟元素!!

>>>$(".foo+p");
  • 选择兄弟元素

兄弟元素(sibling elements)是指被同一个元素包裹的同一级全部元素。选择兄弟元素非常类似于选择下一个元素,只是它返回起始元素之后匹配的全部兄弟元素,而不是只返回下一个。

起始元素标识~匹配兄弟元素

>>>$(".foo~p");

4.基本过滤器

  • 选择第一个或最后一个元素

只要在任意选择器之后追加:first或:last即可:

>>>$("p:first");
>>>$("p:last");
  • 选择不匹配某个选择器的元素

使用:not()过滤器。

>>>$("p:not(.foo)");
  • 选择索引为奇数或偶数的元素

:even 和 :odd

>>>$("p:odd");
>>>$("p:even");
  • 选择特定索引的元素

:eq()过滤器。

>>>$("p:eq(3)");

5.内容过滤器

  • 匹配包含特定文本的元素

要匹配包含特定文本的元素,使用:contains()过滤器。(仅匹配标签内的文本)

>>>$("p:contains(Another)");
  • 匹配包含特定元素的元素

:has()过滤器用来匹配包含特定元素的元素。

>>>$("p:has(span)");
  • 选择空元素

:empty()选择出那些不包含任何文本也不包含任何其他元素的空元素。

>>>$(":empty");
  • 选择父元素

与:empty相反,:parent只匹配那些拥有子元素的元素,不管它包含的是其他元素,还是文本内容,或者兼而有之。

>>>$("p:parent");

6.可见性过滤器

利用:hidden和:visible,分别用来选择被隐藏的元素和可看到的元素。

>>>$("p:visible");  //可见的
>>>$("p:hidden"); //隐藏的

7.属性过滤器

  • 根据属性及属性的值选择元素:

[属性名=属性值]

>>>$("[class=foo]");
  • 选择没有某个属性的元素或属性值不匹配的元素

[属性名!=属性值]

$("[class!=foo]");

8.子元素过滤器

  • 匹配奇数索引值/偶数索引值/特定索引值的元素

:nth-child()在匹配元素时提供了4个参数:even,odd,index和equation。

>>>$("p:nth-child(odd)");
>>>$("p:nth-child(even)");
  • 选择第一个或最后一个子元素

使用:first-child;last-child

>>>$("p span:last-child");

关于选择器:last()和:last-child()的区别:

这两个选择器都是匹配集合中的最后一个元素,差别在于 :last 将匹配所有的集合中的最后一个元素。而 :last-child 将匹配集合中的所有位置为最后一个的子元素。:last 将永远返回一个元素,而 :last-child可能返回一批元素。

9.表单过滤器

目前可用的表单选择器(暗含对input框内type的选择)有:button,:checkbox,:file,:image,:input,:password,:radio,:submit,:text.

如:

>>>$("input:radio");
  • 匹配可用或禁用的表单元素
>>>$(":enabled");
>>>$(":disabled");
  • 匹配选中或未选中的表单元素

过滤器:checked和:selected分别用于获取checked为真和selected为真的表单元素。

>>>$(":checked");
>>>$(":selected");

就这样吧。

《深入PHP与jQuery开发》读书笔记——Chapter1的更多相关文章

  1. Flask Web开发读书笔记

    开篇:目前想自学Flask Web开发--基于Python,找了几本书准备啃啃,同时也会分享读书笔记.希望和大家一起进步. Flask是小型框架,可以算是微框架,但是他的功能还是比较多 Flask有三 ...

  2. 锋利的jQuery--编写jQuery插件(读书笔记五)[完结篇]

    1.表单验证插件Validation   2.表单插件Form   3.动态事件绑定插件livequery 可以为后来的元素绑定事件   类似于jQuery中的live()方法     4.jQuer ...

  3. jQuery开发技术笔记

    HTML DOM 加载步骤    1. 解析 HTML 结构     2.加载外部脚本和样式表文件     3.解析并执行脚本代码     4.构造 HTML DOM 模型     5.加载图片等外部 ...

  4. 《锋利的jQuery》读书笔记(DOM+事件)

    前阵子买了一批书,就从锋利的jQuery看起吧,书中一些太过常规以及没有强记必要性的操作就不记录了. 1.DOM加载后执行JS $(document).ready(function(){ //.... ...

  5. 《锋利的jQuery》读书笔记

    jQuery理念:write less, do more! 第 一 章一:jQuery简介 a:轻量级 b:强大选择器 c:DOM封装 d:ajax封装 e:不污染顶级变量 只建立一个jQuery对象 ...

  6. <<敏捷开发>>读书笔记

    1.走进敏捷 * 组织成功 增加业务专家,较少bug和测试的交流成本,即使取消不好的技术 首先发布最有价值的特性,时常发布新的版本,即使改进软件 * 技术成功 结对编程,代码审核,确保同一份代码有不同 ...

  7. 【锋利的Jquery】读书笔记十一

    项目进度太赶,天天公司加班12小时,没时间看书充电.2016年再更新一篇吧.现在凌晨2点36分. 2017加油哦 jquery合适的选择器 $("#id") 无疑是最佳提高性能的方 ...

  8. 【锋利的Jquery】读书笔记七

    第七章  jquery插件 管理cookie的插件--cookie jquery插件太多没什么好讲的,百度太多 说以下 cookie插件 <!DOCTYPE html> <html& ...

  9. 【锋利的Jquery】读书笔记六

    ajax优点缺点 json格式的严格 { "people": [ { "firstName": "Brett", "lastNam ...

随机推荐

  1. 20155224聂小益 - 我的技能与C语言学习

    20155224聂小益 - 我的技能与C语言学习 预备作业2 ● 你有什么技能比大多人(超过90%以上)更好? 我认为我可能有些技能身边有的人比较少有,但是要是超过90%以上我实在不敢保证.毕竟厉害的 ...

  2. eclipse项目编码问题

    使得eclipse的新建项目的默认编码直接为UTF-8: 在菜单栏的Window->Preferences->General->Workspace->Text file enc ...

  3. 学习笔记——Maven实战(十)Maven 3,是时候升级了

    去年10月份Apache Maven发布了3.0正式版,而在上个月的22号,Eclipse基金会宣布了Eclipse 3.7(Indigo)的发布,该版本Eclipse最大的新特性之一就是集成了Mav ...

  4. libusb(.NET)开源项目使用小结

    更多细节请参考官方帮助文档 1,修改设备类型为自己的标识 InfWizard项目里,改掉资源文件LibUsb-Win32-LUDN.Driver.Resources. 原来的三处libusb-win3 ...

  5. web压测工具http_load原理分析

    一.前言 http_load是一款测试web服务器性能的开源工具,从下面的网址可以下载到最新版本的http_load: http://www.acme.com/software/http_load/ ...

  6. Bootstrap系列 -- 19. 焦点状态

    表单主要用来与用户沟通,好的表单就能更好的与用户进行沟通,而好的表单一定离不开表单的控件状态. 表单状态的作用: 每一种状态都能给用户传递不同的信息,比如表单有焦点的状态可以告诉用户可以输入或选择东西 ...

  7. Scala 中的函数式编程基础(一)

    主要来自 Scala 语言发明人 Martin Odersky 教授的 Coursera 课程 <Functional Programming Principles in Scala>. ...

  8. Winform中的PictureBox读取图像文件无法释放的问题

    今天做一拍照程序,相机SDK什么都搞定,就为了显示图像并且保存照片的步骤卡了半天. 原因是预览图像使用了PictureBox,载入图片文件的方式为: pictureBoxPhoto.Image = I ...

  9. LCA最近公共祖先 Tarjan离线算法

    学习博客:  http://noalgo.info/476.html 讲的很清楚! 对于一颗树,dfs遍历时,先向下遍历,并且用并查集维护当前节点和父节点的集合.这样如果关于当前节点(A)的关联节点( ...

  10. BZOJ-2186 沙拉公主的困惑 线性筛(筛筛筛)+线性推逆元

    2186: [Sdoi2008]沙拉公主的困惑 Time Limit: 10 Sec Memory Limit: 259 MB Submit: 2417 Solved: 803 [Submit][St ...