新乡 网站运营,网站开发语言怎么查,常州网站建设系统,少女大人免费观看高清电视剧韩剧目录
一、jQuery
jQuery内容
jQuery版本
jQuery对象
jQuery基础语法
二、查找标签
基本选择器
层级选择器
基本筛选器
属性选择器
表单筛选器
三、筛选器方法
四、操作标签 一、jQuery
jQuery是一个轻量级的、兼容多浏览器的JavaScript库。jQuery使用户能够更方便…目录
一、jQuery
jQuery内容
jQuery版本
jQuery对象
jQuery基础语法
二、查找标签
基本选择器
层级选择器
基本筛选器
属性选择器
表单筛选器
三、筛选器方法
四、操作标签 一、jQuery
jQuery是一个轻量级的、兼容多浏览器的JavaScript库。jQuery使用户能够更方便地处理HTML Document、Events、实现动画效果、方便地进行Ajax交互能够极大地简化JavaScript编程。它的宗旨就是“Write less, do more.“
jQuery的优势
一款轻量级的JS框架。jQuery核心js文件才几十kb不会影响页面加载速度。丰富的DOM选择器,jQuery的选择器用起来很方便比如要找到某个DOM对象的相邻元素JS可能要写好几行代码而jQuery一行代码就搞定了再比如要将一个表格的隔行变色jQuery也是一行代码搞定。链式表达式。jQuery的链式操作可以把多个操作写在一行代码里更加简洁。事件、样式、动画支持。jQuery还简化了js操作css的代码并且代码的可读性也比js要强。Ajax操作支持。jQuery简化了AJAX操作后端只需返回一个JSON格式的字符串就能完成与前端的通信。跨浏览器兼容。jQuery基本兼容了现在主流的浏览器不用再为浏览器的兼容问题而伤透脑筋。插件扩展开发。jQuery有着丰富的第三方的插件例如树形菜单、日期控件、图片切换插件、弹出窗口等等基本前端页面上的组件都有对应插件并且用jQuery插件做出来的效果很炫并且可以根据自己需要去改写和封装插件简单实用。
jQuery内容
选择器筛选器样式操作文本操作属性操作文档处理事件动画效果插件each、data、Ajax
下载方式
官网链接jQuery
中文文档jQuery API 中文文档 | jQuery API 中文在线手册 | jquery api 下载 | jquery api chm
bootcdnhttps://www.bootcdn.cn/ CDN的作用是为了加快响应速度 https://cdn.bootcdn.net/ajax/libs/jquery/3.7.1/jquery.js script srchttps://cdn.bootcdn.net/ajax/libs/jquery/3.7.1/jquery.js/script jQuery版本
1.x兼容IE678,使用最为广泛的官方只做BUG维护功能不再新增。因此一般项目来说使用1.x版本就可以了最终版本1.12.4 (2016年5月20日)2.x不兼容IE678很少有人使用官方只做BUG维护功能不再新增。如果不考虑兼容低版本的浏览器可以使用2.x最终版本2.2.4 (2016年5月20日)3.x不兼容IE678只支持最新的浏览器。需要注意的是很多老的jQuery插件不支持3.x版。目前该版本是官方主要更新维护的版本。
维护IE678是一件让人头疼的事情一般我们都会额外加载一个CSS和JS单独处理。值得庆幸的是使用这些浏览器的人也逐步减少PC端用户已经逐步被移动端用户所取代如果没有特殊要求的话一般都会选择放弃对678的支持。
jQuery对象
jQuery对象就是通过jQuery包装DOM对象后产生的对象。jQuery对象是 jQuery独有的。如果一个对象是 jQuery对象那么它就可以使用jQuery里的方法例如$(“#i1”).html()。
$(#i1).html()的意思是获取id值为 i1的元素的html代码。其中 html()是jQuery里的方法。相当于 document.getElementById(i1).innerHTML;
jQuery对象无法使用 DOM对象的任何方法如果你想使用jQuery提供的各个方法就需要你把DOM对象转为jQuery对象。DOM对象标签对象
一个约定我们在声明一个jQuery对象变量的时候在变量名前面加上$
var $variable jQuery对像
var variable DOM对象
$variable[0] //jQuery对象转成DOM对象
jQuery基础语法
jQuery(选择器).action(); -------- $(选择器).action();
二、查找标签
基本选择器
id选择器
$(#id)
标签选择器
$(tagName)
class选择器
$(.className)
配合使用
$(div.c1) // 找到有c1 class类的div标签
$(div#d1)
所有元素选择器
$(*)
组合选择器
$(#id, .className, tagName)$(#d1,.c1,p) # 并列混用
$(div span) # 后代
$(divspan) # 儿子
$(divspan) # 毗邻
$(div~span) # 弟弟
层级选择器
x和y可以为任意选择器
$(x y); // x的所有后代y子子孙孙
$(x y); // x的所有儿子y儿子
$(x y) // 找到所有紧挨在x后面的y
$(x ~ y) // x之后所有的兄弟y
基本筛选器
:first // 第一个
:last // 最后一个
:eq(index) // 索引等于index的那个元素
:even // 匹配所有索引值为偶数的元素从 0 开始计数
:odd // 匹配所有索引值为奇数的元素从 0 开始计数
:gt(index) // 匹配所有大于给定索引值的元素
:lt(index) // 匹配所有小于给定索引值的元素
:not(元素选择器) // 移除所有满足not条件的标签
:has(元素选择器) // 选取所有包含一个或多个标签在其内的标签(指的是从后代元素找)
例子
$(ul li:first) // 大儿子
$(ul li:last) // 小儿子
$(ul li:eq(2)) // 放索引
$(ul li:even) // 偶数索引 0包含在内
$(ul li:odd) // 奇数索引
$(ul li:gt(2)) // 大于索引
$(ul li:lt(2)) // 小于索引
$(ul li:not(#d1)) // 移除满足条件的标签
$(div:has(h1)) // 找到所有后代中有h1标签的div标签
$(div:has(.c1)) // 找到所有后代中有c1样式类的div标签
$(li:not(.c1)) // 找到所有不包含c1样式类的li标签
$(li:not(:has(a))) // 找到所有后代中不含a标签的li标签
练习
自定义模态框使用jQuery实现弹出和隐藏功能。
jQuery版自定义版本
!DOCTYPE html
html langzh-CN
headmeta charsetUTF-8meta http-equivx-ua-compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1title自定义模态框/titlestyle.cover {position: fixed;left: 0;right: 0;top: 0;bottom: 0;background-color: darkgrey;z-index: 999;}.modal {width: 600px;height: 400px;background-color: white;position: fixed;left: 50%;top: 50%;margin-left: -300px;margin-top: -200px;z-index: 1000;}.hide {display: none;}/style
/head
body
input typebutton value弹 idi0div classcover hide/div
div classmodal hidelabel fori1姓名/labelinput idi1 typetextlabel fori2爱好/labelinput idi2 typetextinput typebutton idi3 value关闭
/div
script srchttps://cdn.bootcss.com/jquery/3.2.1/jquery.min.js/script
scriptvar tButton $(#i0)[0];tButton.onclickfunction () {var coverEle $(.cover)[0];var modalEle $(.modal)[0];$(coverEle).removeClass(hide);$(modalEle).removeClass(hide);};var cButton $(#i3)[0];cButton.onclickfunction () {var coverEle $(.cover)[0];var modalEle $(.modal)[0];$(coverEle).addClass(hide);$(modalEle).addClass(hide);}
/script
/body
/html
属性选择器
[attribute]
[attributevalue] // 属性等于
[attribute!value] // 属性不等于
例子
// 示例
input typetext
input typepassword
input typecheckbox
$(input[typecheckbox]); // 取到checkbox类型的input标签
$(input[type!text]); // 取到类型不是text的input标签
表单筛选器
:text
:password
:file
:radio
:checkbox:submit
:reset
:button
例子
$(:checkbox) // 找到所有的checkbox
$(input[typetext])----------$(:text)
$(input[typepassword])----------$(:password)
表单对象属性
:enabled
:disabled
:checked
:selected
例子
找到可用的input标签
forminput nameemail disableddisabled /input nameid /
/form$(input:enabled) // 找到可用的input标签
找到被选中的option
select ids1option valuebeijing北京市/optionoption valueshanghai上海市/optionoption selected valueguangzhou广州市/optionoption valueshenzhen深圳市/option
/select$(:selected) // 找到所有被选中的option$(:checked) # 它会将checked和selected都拿到
$(:selected) # 它不会 只拿selected
$(input:checked) # 自己加一个限制条件
三、筛选器方法
下一个元素
$(#id).next()
$(#id).nextAll()
$(#id).nextUntil(#i2)
上一个元素
$(#id).prev()
$(#id).prevAll()
$(#id).prevUntil(#i2)
父亲元素
$(#id).parent()
$(#id).parents() // 查找当前元素的所有的父辈元素
$(#id).parentsUntil() // 查找当前元素的所有的父辈元素直到遇到匹配的那个元素为止。
儿子和兄弟元素
$(#id).children(); // 儿子们
$(#id).siblings(); // 兄弟们
查找 搜索所有与指定表达式匹配的元素。这个函数是找出正在处理的元素的后代元素的好方法。
$(div).find(p)-----------------等价于$(div p)
筛选 筛选出与指定表达式匹配的元素集合。这个方法用于缩小匹配的范围。用逗号分隔多个表达式。
$(div).filter(.c1) // 从结果集中过滤出有c1样式类的
等价于 $(div.c1)
补充
.first() // 获取匹配的第一个元素$(div span:first)--------------$(div span).first()
.last() // 获取匹配的最后一个元素$(div span:last)-----------------$(div span).last()
.not() // 从匹配元素的集合中删除与指定表达式匹配的元素$(div span:not(#d3)) ---------------$(div span).not(#d3)
.has() // 保留包含特定后代的元素去掉那些不含有指定后代的元素。
.eq() // 索引值等于指定值的元素
示例左侧菜单
!DOCTYPE html
html langen
headmeta charsetUTF-8meta http-equivx-ua-compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1title左侧菜单示例/titlestyle.left {position: fixed;left: 0;top: 0;width: 20%;height: 100%;background-color: rgb(47, 53, 61);}.right {width: 80%;height: 100%;}.menu {color: white;}.title {text-align: center;padding: 10px 15px;border-bottom: 1px solid #23282e;}.items {background-color: #181c20;}.item {padding: 5px 10px;border-bottom: 1px solid #23282e;}.hide {display: none;}/style
/head
bodydiv classleftdiv classmenudiv classitemdiv classtitle菜单一/divdiv classitemsdiv classitem111/divdiv classitem222/divdiv classitem333/div/div/divdiv classitemdiv classtitle菜单二/divdiv classitems hidediv classitem111/divdiv classitem222/divdiv classitem333/div/div/divdiv classitemdiv classtitle菜单三/divdiv classitems hidediv classitem111/divdiv classitem222/divdiv classitem333/div/div/div/div
/div
div classright/div
script srchttps://cdn.bootcss.com/jquery/3.2.1/jquery.min.js/scriptscript$(.title).click(function (){ // jQuery绑定事件// 隐藏所有class里有.items的标签// $(.items).addClass(hide); //批量操作// $(this).next().removeClass(hide);// jQuery链式操作$(this).next().removeClass(hide).parent().siblings().find(.items).addClass(hide)});
/script
四、操作标签