javascript第十七天jqurey初识

Jquery的初识

  1. jQuery的定义

(1)     jQuery是一个优秀的javascript库。是由John Resig创建于2006年1月的开源项目。

(2)     Write less do more

(3)     jQuery凭借简洁的语法和跨平台的兼容性,极大的简化了javascript开发人员遍历html文档、操作DOM、处理事件、执行动画和开发ajax的操作。

  1. jQuery的优势

(1)     在jQuery的2.0版本之前 所有的版本都包含兼容处理,没有兼容性问题,但在2.0之后,jQuery就不处理兼容性问题了。

(2)     链式操作方式(链式编程):jQuery对象.方法1().方法2().方法3().....

(3)     隐式迭代(循环):在jQuery中,我们批量获取的元素 可以直接添加事件 不需要循环,循环的任务 由jQuery隐式完成。

  1. jQuery的引入

(1)     本地引入:将jQuery的js文件下载到本地 并引入

(2)     线上引入:直接在script标签中的src属性中 写入jQuery文件的网络地址

①    https://cdn.bootcss.com/jquery/1.7.1/jquery.min.js

  1. jQuery的入口函数

(1)     我们要编写jQuery的代码 就必须先写入口函数

(2)     jQuery入口函数 可以 防止 顶级变量的污染

(3)     入口函数的写法:

①    jQuery(document).ready(function(){ jquery代码 })

②    在这里jQuery可以简写为$  $(document).ready(function(){ jquery代码 })

③    在jquery代码中 jQuery 和 $ 是完全等价的

④    jQuery入口函数的简写形式:$(function(){ jQuery代码 })

(4)     jQuery的入口函数 会在 页面html结构 和 css样式加载完之后 立即执行

  1. jQuery对象和dom对象的区别

(1)     jQuery也可以使用自己的选择器 获取 页面 内的元素  通过jQuery选择器获取到的元素对象 被称为 jQuery对象

(2)     jQuery对象 和 dom对象有本质区别

①    jQuery(“.类名/#id/标签名”)  /  $(“.类名/#id/标签名”)

②    Jquery对象可以进行隐式迭代  dom对象不行

③    jQuery对象只能使用jQuery的方法,dom对象也只能使用Dom的方法

  1. jQuery对象和dom对象的互转

(1)     jQuery对象 ---->  dom对象

①    由于jQuery对象是一个伪数组,伪数组中的数组项就是dom对象,因此转换方式为  jQuery对象[idx] 就是具体的dom对象

(2)     Dom对象  ---->  jquery对象

①    $/jQuery(要转换的dom元素)

  1. jQuery的具体用法

(1)     jQuery的选择器

①    jQuery的基础选择器

1)       标签选择器:$/jQuery(‘标签名’)

2)       类名选择器:$/jQuery(‘.类名’)

3)       Id选择器:$/jQuery(‘#id’)

②    jQuery的层级选择器

1)       子代选择器

2)       后代选择器

3)       下一个兄弟选择器  $(“a+b”) 获取的是a元素后 紧跟的元素

4)       获取后续所有兄弟元素  $(“a~b”) 获取的是a元素后 所有b元素

③    jQuery的过滤选择器

1)       基本过滤选择器

  1. $(“选择器:first”) 获取一个元素中的第一个子元素
  2. $(“选择器:last”) 获取最后一个子元素
  3. $(“选择器:not(满足的条件)”) 反向选择,选择不满足指定条件的元素
  4. $('li:even'):获取索引为偶数的li元素
  5. $('li:odd'):获取索引为奇数的li元素
  6. $(‘li:eq(idx)’)  获取指定下标的li
  7. $(‘li:lt(idx)’)  获取下标小于指定下标的元素
  8. $(‘li:gt(idx)’)  获取下标大于指定下标的元素

2)       内容过滤选择器

  1. contains:$(li:contains(指定的文本内容))
  2. has:$(‘li:has(指定标签名)’)
  3. empty:$(‘li:empty’)

3)       可见性过滤选择器

  1. visible:$(‘li:visible’)  获取显示的li
  2. hidden:$(‘li:hidden’)  获取隐藏的li

4)       属性过滤选择器

  1. [属性名]  $(‘li[属性名]’)
  2. [属性名=属性值]  $(‘li[属性名=属性值]’)
  3. [属性名^=属性值]  $(‘li[属性名^=属性值]’)
  4. [属性名$=属性值]  $(‘li[属性名$=属性值]’)
  5. [属性名*=属性值]  $(‘li[属性名*=属性值]’)

5)       子元素过滤选择器

  1. :first-child
  2. :last-child
  3. :nth-child

6)       表单对象过滤选择器

  1. :disabled  获取禁用的表单元素
  2. :enabled  获取未禁用的表单元素
  3. :checked  获取被勾选的表单元素
  4. :selected  获取被选中的下拉列表项

7)       表单过滤选择器

  1. :text  $(‘:text’) 获取到所有文本输入框
  2. :password
  3. :checkbox
  4. :radio
  5. :submit
  6. :button
  7. :reset
  8. :file
  9. :input 获取到所有的表单元素

(2)     遍历节点

①    遍历兄弟节点

1)       Next:获取下一个兄弟元素

2)       nextAll:获取后面所有兄弟元素

3)       Prev:获取前一个兄弟元素

4)       prevAll:获取前面所有兄弟元素

5)       Siblings:获取所有兄弟元素

②    遍历父节点

1)       Parent 获取直接父元素

2)       Parents  获取当前元素的所有父元素,一直到html

③    过滤遍历节点

1)       Find:父元素.find(“选择器”) 按照选择器的条件 在父元素中获取满足条件的子元素

2)       Filter:元素.filter(“选择器”) 按照选择器的条件 在所有元素中筛选满足条件的元素

3)       Not:元素.not(‘选择器’)  按照选择器的条件 在所有元素中筛选不满足条件的元素

(3)     jQuery操作属性

①    原生js中操作元素属性的方法

1)       元素.属性名

2)       元素.getAttribute(“属性名”)   元素.setAttribute(“属性名”,”属性值”)

②    Attr

1)       用法:

  1. 获取:jQuery元素.attr(“属性名”)
  2. 设置:jQuery元素.attr(“属性名”,”属性值”)

③    Prop

1)       用法:

  1. 获取:jQuery元素.prop(‘属性名’)
  2. 设置:jQuery元素.prop(“属性名”,”属性值”)

④    Attr和prop的使用环境

1)       普通属性操作 用attr  表单元素的属性操作 用prop

(4)     jQuery操作类名

①    addClass

②    removeClass

③    toggleClass

④    hasClass

(5)     jQuery操作样式

①    Css

1)       设置:元素.css(“样式属性名”,”样式属性值”)

2)       获取:元素.css(“样式属性名”)

3)       批量设置:元素.css({样式属性名1:属性值 , 样式属性名2:属性值,.....})

4)       批量获取:元素.css([“样式属性名1” , ”样式属性名2” , ......])

(6)     jQuery操作元素内容

①    Html:

1)       获取:元素.html();

2)       设置:元素.html(要设置的html内容)

②    Text

1)       获取:元素.text();

2)       设置:元素.text(要设置的文本内容)

③    Val

1)       获取:元素.val();

2)       设置:元素.val(要设置的value内容)

  1. jQuery的方法

(1)     jQuery函数的each方法

①    作用:用来循环数组和对象的

②    用法:$.each(要循环的数组/对象,function(idx,item){})

1)       如果循环的是数组 idx:下标 item:数组项

2)       如果循环的是对象 idx:属性名 item:属性值

(2)     jQuery对象的each方法

①    作用:用来 循环jQuery对象的

②    用法:jQuery对象.each(function(idx,item){})

1)       Idx:下标

2)       Item:dom元素

(3)     jQuery的extend方法

posted @ 2020-10-09 19:12  默默的1  阅读(178)  评论(0)    收藏  举报