总结-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 ...
随机推荐
- jq 实现无限级地区联动 样式为bootstrap
HTML 部分 <div class="row" style="margin:100px auto;"> <form method=" ...
- 【目录】Leetcode
Leetcode 1.动态规划 Palindrome Partitioning II(hard) ☆ Distinct Subsequences(hard) Edit Distance (hard) ...
- STM32F103使用内部Flash保存参数
在我们应用开发时,经常会有一些程序运行参数需要保存,如一些修正系数.这些数据的特点是:数量少而且不需要经常修改,但又不能定义为常量,因为每台设备可能不一样而且在以后还有修改的可能.将这类数据存在指定的 ...
- mint17.3挂载u盘出现错误:mount:unknown filesystem type 'exfat'
mint17.3挂载u盘出现错误:mount:unknown filesystem type 'exfat' 安装exfat-fuse: sudo apt-get install exfat-fuse
- 导入excel数据到数据库
1.上传excel到服务器 jsp页面代码 <form action="actionname" method="post" id="form1& ...
- PHP CURL模拟提交数据 攻击N次方
public function actionCurl(){ $data['DATA']='{"NAME":"c","LEGEND":&quo ...
- Oracle监听的静态注册和动态注册
静态注册:通过解析listene.ora文件 动态注册:由PMON进程动态注册至监听中 在没有listener.ora配置文件的情况下,如果启动监听,则监听为动态注册.用图形化netca创建的监听,默 ...
- fscanf使用
函数名: fscanf 简述:C语言中基本的文件操作 功 能: 从一个流中执行格式化输入,fscanf遇到空格和换行时结束,注意空格时也结束.这与fgets有区别,fgets遇到空格不结束. 简单的说 ...
- 【淘淘】Quartz作业存储与管理
一.Quartz作业管理和存储方式简介: 作业一旦被调度,调度器需要记住并且跟踪作业和它们的执行次数.如果你的作业是30分钟后或每30秒调用,这不是很有用.事实上,作业执行需要非常准确和即时调用在被调 ...
- flexBox布局 -- 兼容性
//中间留空,两侧靠边,多行显示,每行3个,一个li的宽度是30%,最后一行,如果是两个的时候会出现异常布局,可以对最后一行的最后一个li进行right:35%,android4.4以上才支持, 所以 ...