总结-jQuery
一、ajax提交,如果某个变量的值填的是doc对象,jQuery不报错,也没有反应,如: {userName : $('#userName')}。正确的写法 {userName : $('#userName').val()}
1、选择器selector
1)基本选择器
#id
.class
element
selector1,selector2..selectorn
*
2)层次选择器
selector1 selector2 : 后代
selector1>selector2 : 只考虑子节点
selector1+selector2: 下一个兄弟
selector1~selector2: 下面所有的兄弟
3)过滤选择器
(1)基本过滤选择器
:first
:last
:not(selector)
:even偶数的
:odd奇数的
:eq(index)(0,1,2,3。。。)
:gt(index) index右边所有的
:lt(index) index左边所有的(自己显然不在范围内,不解释)
示例:$('table tr:eq(0~n) td:eq(0~n)').css('color','red');//某一行的某一列
(2)内容过滤选择器
:contains(text) 匹配包含给定文本的元素
:empty 匹配所有不包含子元素或者文本的空元素
:has(selector) 匹配含有选择器所匹配的元素的元素
:parent 匹配含有子元素或者文本的元素
(3)可见性过滤选择器
:hidden 匹配所有不可见元素,或者type为hidden的元素
:visible 匹配所有的可见元素
(4)属性过滤选择器
[attribute]
[attribute=value]
[attribute!=value]
(5)子元素过滤选择器
:nth-child(index/even/odd) (下标从1开始,不是0,这是个例外)
(6)表单对象属性过滤选择器
:enabled
:disabled
:checked
:selected
5)表单选择器
:input input,textarea,select,button
:text
:pasword
:radio
:checkbox
:submit
:image
:reset
:button
:file
:hidden
2、dom操作(核心)
1)查询:找到一个节点以后,可以通过以下四个方法来访问节点的html内容、文件内容、属性值、值。
a.html(): 访问节点的html内容
b.text():访问节点的文本内容
c.attr():访问节点的属性
d.val():访问节点的值
以上方法均可以查询或者修改相应的值。
2)创建
$(html);
3)插入节点
append():作为最后一个孩子追加
prepend():作为第一个孩子追加
after():作为下一个兄弟追加
before():作为上一个兄弟追加
4)删除节点
remove()
remove(selector)
empty():清空节点
5)将javascript代码与html代码分离
$(function(){
//当整个页面加载完毕,会执行这儿的代码。
});
6)复制节点
clone()
clone(true):使复制的节点也具有行为(将事件处理代码一块复制)
7)属性操作
读取:attr('');
设置: attr('','') 或者一次
设置多个 attr({"":"","":""});
删除:removeAttr('')
8)样式操作
获取和设置: attr("class",""),attr("style","")
追加:addClass('')
移除:removeClass('')
或者removeClass('s1 s2')
或者removeClass()//会删除所有样式
切换样式:toggleClass,有该样式,就删除,没有,就添加。
是否有某个样式 hasClass('')
读取css('')
设置css('','')或者
css({'':'','':''})//设置多个样式
9)遍历节点
children()/children(selector)只考虑子元素,不考虑其它后代元素。
next()/next(selector)下一个兄弟
prev()/prev(selector)上一个兄弟
siblings()/siblings(selector)其它兄弟
find(selector):查找所有的后代,并且后代要满足selector的要求。
3、事件处理
1)回顾之前的事件处理知识
a.绑订事件处理代码
方式一:绑订到html标记 <input type="button" onclick="f1();"/>
方式二: 绑订到dom对象 obj.onclick=f1;
b.如何获得事件对象
给事件处理函数添加一个参数"event"
c.事件对象有什么作用
作用1:依据事件对象找到事件源
event.srcElement //ie
event.target //ff chrome
作用2:获得鼠标点击的坐标
event.clientX
event.clientY
作用3:取消冒泡
event.cancelBubble=true;
d.事件冒泡:子节点产生的事件会抛给相应的父节点。
2)在jQuery当中,如何处理事件
a.绑订事件处理代码
方式一:$obj.bind(事件类型,处理函数);如:$obj.bind('click',fn1);
方式二:$obj.click(fn1);
b. 如何获得事件对象:只需要给事件处理函数传递一个参数
$obj.click(function(e){}); // e就是事件对象(是jQuery对底层的事件对象的封装)。
c.事件对象有什么作用
作用1:依据事件对象找到事件源
//obj是一个dom对象。
var obj = e.target;
作用2:获得鼠标点击的坐标
e.pageX
e.pageY
作用3:取消冒泡
e.stopPropagation();
d.合成事件
hover(mouseenter,mouseleave): 第一个函数处理光标进入,第二个函数处理光标移出。
e.模拟操作
方式一:简写形式,比如:$obj.focus();
方式二:正式写法 $obj.trigger('focus'); $obj.trigger('click');(触发点击事件)
4、动画
1)show() hide()
a.作用:通过同时改变元素的宽度与高度来实现显示或者隐藏
b.用法:
show(时间,[callback]);
时间:单位可以是"slow","normal","fast"或者毫秒数。
callback:回调函数,当整个动画执行完毕,接下来会调用回调函数。
2)slideUp() slideDown()
a.作用:通过改变元素的高度来实现显示或者隐藏
b.用法同上。
3)fadeIn() fadeOut()
a.作用:通过改变元素的不透明度来实现显示或者隐藏。
b.用法同上。
4)自定义动画 animate(params,speed,[callback])
用法:
params: 是一个javascript对象,描述动画结束之后元素的样式。
speed:速度,单位是毫秒。
callback:回调函数,当整个动画执行完毕,接下来会调用回调函数。
5、操作类数组的方法:
1)each(fn(i)):循环遍历每一个元素,this代表被迭代的dom对象,$(this)代表被迭代的jQuery对象。i表示正在被迭代的对象的下标(从0开始)。
2)eq(index):返回index+1位置处的jQuery对象
3)index(obj):返回下标,其中obj可以是dom对象或者jQuery对象。
4)length属性:jQuery对象包含的dom对象的个数
5)get():返回dom对象组成的数组
6)get(index):返回index+1个dom对象。
总结-jQuery的更多相关文章
- Angular杂谈系列1-如何在Angular2中使用jQuery及其插件
jQuery,让我们对dom的操作更加便捷.由于其易用性和可扩展性,jQuer也迅速风靡全球,各种插件也是目不暇接. 我相信很多人并不能直接远离jQuery去做前端,因为它太好用了,我们以前做的东西大 ...
- jQuery UI resizable使用注意事项、实时等比例拉伸及你不知道的技巧
这篇文章总结的是我在使用resizable插件的过程中,遇到的问题及变通应用的奇思妙想. 一.resizable使用注意事项 以下是我在jsfiddle上写的测试demo:http://jsfiddl ...
- Jquery的点击事件,三句代码完成全选事件
先来看一下Js和Jquery的点击事件 举两个简单的例子 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&q ...
- jQuery实践-网页版2048小游戏
▓▓▓▓▓▓ 大致介绍 看了一个实现网页版2048小游戏的视频,觉得能做出自己以前喜欢玩的小游戏很有意思便自己动手试了试,真正的验证了这句话-不要以为你以为的就是你以为的,看视频时觉得看懂了,会写了, ...
- jquery和Js的区别和基础操作
jqery的语法和js的语法一样,算是把js升级了一下,这两种语法可以一起使用,只不过是用jqery更加方便 一个页面想要使用jqery的话,先要引入一下jqery包,jqery包从网上下一个就可以, ...
- jQuery之ajax实现篇
jQuery的ajax方法非常好用,这么好的东西,你想拥有一个属于自己的ajax么?接下来,我们来自己做一个简单的ajax吧. 实现功能 由于jq中的ajax方法是用了内置的deferred模块,是P ...
- 利用snowfall.jquery.js实现爱心满屏飞
小颖在上一篇一步一步教你用CSS画爱心中已经分享一种画爱心的方法,这次再分享一种方法用css画爱心,并利用snowfall.jquery.js实现爱心满屏飞的效果. 第一步: 利用伪元素before和 ...
- jQuery的61种选择器
The Write Less , Do More ! jQuery选择器 1. #id : 根据给定的ID匹配一个元素 <p id="myId">这是第一个p标签< ...
- jquery.uploadify文件上传组件
1.jquery.uploadify简介 在ASP.NET中上传的控件有很多,比如.NET自带的FileUpload,以及SWFUpload,Uploadify等等,尤其后面两个控件的用户体验比较好, ...
- 浅谈 jQuery 核心架构设计
jQuery对于大家而言并不陌生,因此关于它是什么以及它的作用,在这里我就不多言了,而本篇文章的目的是想通过对源码简单的分析来讨论 jQuery 的核心架构设计,以及jQuery 是如何利用javas ...
随机推荐
- BZOJ 4724: [POI2017]Podzielno
Description 由\([0,B-1]\)的数字构造一个 \(B\) 进制数字,使得他是 \(B-1\) 的倍数. Sol 贪心+二分. 首先 \(X\) 是 \(B-1\) 的倍数,那么有 \ ...
- springMVC配置Json
步骤1:将json包引入工程中,分别是:jackson-annotations-2.7.0.jar,jackson-core-2.7.0.jar,jackson-databind-2.7.0.jar ...
- 14. Longest Common Prefix
题目: Write a function to find the longest common prefix string amongst an array of strings. Subscribe ...
- 在注册表中无Python3.5安装路径的情况下安装pywin32-
当安装pywin32出现Python Version 3.5 required which was not found in the registry的时候表面注册表中没有Python3.5的安装路径 ...
- Knockout.js随手记(1)
新的开始,knockout.js 1.首先去http://knockoutjs.com/index.html下载knockout.js,最新的版本是2.3 2.知道什么是Knockout?它是个Jav ...
- Python 元组
#不可变序列-----元组 tuple #元组和列表十分相似,元组和字符串一样都是不可变的. #元组由不同的元素组成,每个元素可以存储不同类型的数据,例如 #字符串.数字和元组 #元组通常代表一行数据 ...
- QQ列表展示
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...
- BestCoder Round #85(ZOJ1569尚未验证)
A题 子序列和啊,就要想到前缀和的差.这个转换一定要!记着!那么i到j的一段子序列和Sij%m == 0就等价于(Sj-Si-1)%m == 0 了,那么什么意思呢?就是如果有两段前缀和%m的模是一 ...
- 【BZOJ】3505: [Cqoi2014]数三角形
题意 \(n * m(1 \le n, m \le 1000)\)的网格,求顶点在格点上三角形的个数. 分析 假设\(n \le m\) \(ans = \binom{(n+1) * (m+1)}{3 ...
- 基础知识:Q&A
1.点乘几何意义? >0,a,b同向,=1时,方向完全相同 =0,垂直 <0,反向,=-1时,方向完全相反 2.叉乘几何意义?叉乘得到的向量的方向怎么确定? aXb ,可以得到 同时垂直于 ...