juery在工作中经常使用,遇到不会的问题往往百度一下,事后就忘。使用到现在也感觉不到有什么提高,为了每天进步一点点,从今天起抽时间记录下对juery的学习。

学习之前,首先要了解什么是网页元素,网页的本质就是HTML。HTML元素是一个统称,可以认为从一个标签开始到这个标签结束的这部分就是一个网页元素。

1   <div id="div">          //开始标签  属性
2 <p>hello world</p> //元素内容
3 </div> //结束标签
4 <script type="text/javascript">
5 $("#div").prop("tagName") //获取标签名tagName 用attr()方法没获取到
6 $("#div")[0].tagName; //获取标签名 $("#div")[0] 就是一个DOM对象 juery-->DOM
7 $("#div").html() //获取元素内容
8 $(document.getElementById("div")).html() //将DOM对象转换成juery对象 DOM-->juery
9 </script>

从上面可以看出 juery可以取到页面元素的各部分,自然也就能修改这个元素来达到想要的效果,但是前提要从页面中找到这个元素,否则后面的操作无从谈起。 网上关于juery选择器的文章很多,也介绍的比较清晰,虽然大部分都没用到过。

下面就按照我自己的理解一一介绍。

一、基本选择器


1、选取同类型元素

  • 通过标签名选择 : $("div")
  • 通过id选择:$("#id")
  • 通过class选择:$(".class")

2、选取不同类型元素

 <div id="demo" class="example" ></div>
<p>hello world</p>
<script type="text/javascript">
$("p,div").html("hello")
$("p,.example").html("world")
$("p,#demo").html("hello world") //通过 ,隔开来选择两个不同元素也可以选择多个
</script>

3、选取特殊元素(主要针对form表单)

 <script type="text/javascript">
$(":text").parent().html()
$(":password").val("2345")
$(":button").html("已经提交") //会选择其中的<button>标签 另外 如果<button> 没有指明 type时 type默认为“sumbit”;浏览器之间有差别。
$(":reset").val("已经重置")
$(":input").val("全部改变")
//$(":submit").val("已经提交")
//$(":img")
//$(":checkbox")
//$(":redio") //根据type的值来选择 就是针对form表单的
</script>

二、过滤选择器


可以看做 (基本选择器)+"连接符号"+过滤条件,根据过滤条件可以分成四部分。

1、根据集合的特点来过滤

 $(":text:first")
$(":text:last")
$(":text:odd")
$(":text:even")
$(":text:eq(num)") //num为索引
$(":text:gt(num)") //大于num
$(":text:lt(num)") //小于num
$(":text:not(:text)") //不在其中的元素

2、根据页面元素的要素来过滤

  • 根据标签
 $("ul p").html("ul元素下的所有p元素")
$("ul>p").html("ul元素下一级p元素")
$("ul>p+li").html("p元素同级的下个元素")
$("ul>p~li").html("p元素下面所有同级的元素")
  • 根据属性
 $("div[id]")                   //div元素中存在id属性的
$("div[id=new]") //id 值等于
$("div[id*=new]") //id值中包含
$("div[id!=new]") //id值不等于
$("div[id^=new]") //id值以..开始
$("div[id$=new]") //id值以..结束
$("div[id$=new][id]") //复合属性来查找
  • 根据内容
1  $("div:contains('div1')")  //文本  包含此文本的元素和它所有的上级元素
2 $("div:has(div)") //标签 同上
3 $("div:empty") //没有内容的div标签
4 $("div:parent") //有内容的div标签

3、表单元素

1  $("input:selected")
2 $("input:chicked")
3 $("input:enable")
4 $("input:disable")

4、特殊属性(非表单元素也可以使用)

1  $("div:hidden")
2 $("div:visible")
3 $("#div:animated")

网上关于juery选择器的文章:

http://www.360doc.com/content/13/1206/15/10504424_334970071.shtml

http://www.jb51.net/article/57753.htm

juery学习总结(一)——juery选择器的更多相关文章

  1. juery学习总结(二)——juery操作页面元素

    所有的操作都可以分为增.删.改.查四种,juery选择器代表查看的功能,那么剩下的操作就是对页面元素增.删.改.页面元素有3部分构成:标签,属性和内容,juery对元素的操作可以从这3方面入手. 一. ...

  2. juery学习6——焦点事件

    参考资料 深入理解javascript中的焦点管理:http://www.cnblogs.com/xiaohuochai/p/5874447.html

  3. juery学习总结——例子

    1.select元素在选择是找到选择的值和option中的值 <!DOCTYPE html> <html> <head lang="en"> & ...

  4. HTML 学习笔记 JQuery(选择器)

    学习前端也有一段时间了,今天终于进入到JQuery阶段了,对于新手来讲,JQuery的选择器类型之多 功能之强大实在不是一天两天能够记得完的.现在,就采用边学边记录的方式.以后要是忘了的话,也有一个地 ...

  5. jQuery学习笔记(一)jQuery选择器

    目录 jQuery选择器的优点 基本选择器 层次选择器 过滤选择器 表单选择器 第一次写博客,希望自己能够长期坚持,以写博客的方式作为总结与复习. 最近一段时间开始学习jQuery,通过写一个jQue ...

  6. jquery学习(2)--选择器

    jquery-李炎恢学习视频学习笔记.自己手写. 简单的选择器    css 写 法: #box{ color:#f00;}    //id选择器    jquery获取:$('#box').css( ...

  7. 第25篇 jQuer快速学习(上)---选择器和DOM操作

    这个文章经历的时间比较长,不是因为jQuery比较难,而是东西比较多,真心是个体力活.所以本来想把jQuery做成一篇去写,但由于写的时候发现jQuery发现写成一篇的话过于长,对于阅读起来也不是一个 ...

  8. jQuery学习之旅 Item1 选择器【一】

    点击"名称"会跳转到此方法的jQuery官方说明文档. 1. 基础选择器 Basics 名称 说明 举例 #id 根据元素Id选择 $("divId") 选择I ...

  9. 前端学习笔记之CSS选择器

    阅读目录 一 基本选择器 二 后代选择器.子元素选择器 三 兄弟选择器 四 交集选择器与并集选择器 五 序列选择器 六 属性选择器 七 伪类选择器 八 伪元素选择器 九 CSS三大特性 一 基本选择器 ...

随机推荐

  1. MySQL多实例安装

    1.安装MySQL需要的依赖的包和编译软件   (1)安装MySQL需要的依赖包 安装MySQL之前,最好先安装MySQL需要的依赖包,不然后面会出现报错,还得回来安装MySQL的依赖包. [root ...

  2. spring HttpInvoker相关学习资料

    官方文档 spring支持的几种RPC 用Http Invoker实现RCP客户端与后台的交互 Java HttpInvoker小试 Spring注解发布RMI/HTTPInvoker/Hessian ...

  3. [原创]下拉框控件react-native-modal-dropdown更新历程

    前言 不知不觉从今年9月发布第一版控件到现在已经快3个月了 过去不断从开源社区索取,一直一直想着有机会一定要回报

  4. Python 字符串相加问题

    今天在用Python拼接字符串时碰到个问题,从数据库取出来的数据以及获取到的时间等数据拼成了一个字符串a,将字符串a与自定义的字符串b拼接时一直中断,无法继续执行,也没有报错,将数据库取出数据变成自定 ...

  5. MMORPG大型游戏设计与开发(服务器 AI 事件)

    AI中的事件与场景中的事件大致相同,都是由特定的条件触发的.只不过AI的事件与其他事件不同的是,对于AI的事件往往是根据不同的AI类型,和动态的触发条件下才产生的.其实不管AI多么智能,它对应的触发条 ...

  6. BZOJ 3172: [Tjoi2013]单词 [AC自动机 Fail树]

    3172: [Tjoi2013]单词 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 3198  Solved: 1532[Submit][Status ...

  7. mysql timeout知多少

    1.timeout变量知多少 打开mysql,用show variables like '%timeout%'命令一看,不看不知道,一看吓一跳,结果如下面所示,这么多timeout相关变量,一下就吓尿 ...

  8. [LeetCode] Strobogrammatic Number III 对称数之三

    A strobogrammatic number is a number that looks the same when rotated 180 degrees (looked at upside ...

  9. C#进阶系列——WebApi 身份认证解决方案:Basic基础认证

    前言:最近,讨论到数据库安全的问题,于是就引出了WebApi服务没有加任何验证的问题.也就是说,任何人只要知道了接口的url,都能够模拟http请求去访问我们的服务接口,从而去增删改查数据库,这后果想 ...

  10. 像画笔一样慢慢画出Path的三种方法(补充第四种)

    今天大家在群里大家非常热闹的讨论像画笔一样慢慢画出Path的这种效果该如何实现. 北京-LGL 博客号@ligl007发起了这个话题.然后各路高手踊跃发表意见.最后雷叔 上海-雷蒙 博客号@雷蒙之星 ...