Jquery

jquery的口号和愿望 Write Less, Do More(写得少,做得多)

windows.onload:不仅文档的标签需要加载,还要等文档对应的资源加载完,比如img标签的图片的大小资源的加载

$(document).ready(function(){}):只需要等标签加载完毕就可以了 

query选择器 
jquery选择器可以快速地选择元素,选择规则和css样式相同,使用length属性判断是否选择成功。

$('#myId') //选择id为myId的网页元素
$('.myClass') // 选择class为myClass的元素
$('li') //选择所有的li元素
$('#ul1 li span') //选择id为为ul1元素下的所有li下的span元素
$('input[name=first]') // 选择name属性等于first的input元素

对选择集进行过滤

$('div').has('p'); // 选择包含p元素的div元素
$('div').not('.myClass'); //选择class不等于myClass的div元素
$('div').eq(5); //选择第6个div元素

选择集转移

$('#box').prev(); //选择id是box的元素前面紧挨的同辈元素
$('#box').prevAll(); //选择id是box的元素之前所有的同辈元素
$('#box').next(); //选择id是box的元素后面紧挨的同辈元素
$('#box').nextAll(); //选择id是box的元素后面所有的同辈元素
$('#box').parent(); //选择id是box的元素的父元素
$('#box').children(); //选择id是box的元素的所有子元素
$('#box').siblings(); //选择id是box的元素的同级元素
$('#box').find('.myClass'); //选择id是box的元素内的class等于myClass的元素

 

jquery有容错机制,即使没有找到元素,也不会出错,可以用length属性来判断是否找到了元素,length等于0,就是没选择到元素,length大于0,就是选择到了元素。

jquery操作样式

1、操作行间样式: 读取:$div.css(‘width’)     写入:$div.css({‘width’:100,’height:’100’})

2、操作样式类名: 增加样式类名  addClass(‘类名’) 删除样式类名:removeClass(‘类名’)

操作样式类名

$("#div1").addClass("divClass2") //为id为div1的对象追加样式divClass2
$("#div1").removeClass("divClass")  //移除id为div1的对象的class名为divClass的样式
$("#div1").removeClass("divClass divClass2") //移除多个样式
$("#div1").toggleClass("anotherClass") //重复切换anotherClass样式

检查jquery是否选择了元素:用jquery对象的length属性

动画方法animate() 的参数

参数一:要改变的样式属性,写成字典的形式

参数二:动画持续的时间,单位是毫秒,默认是400毫秒,定义时不写单位

参数三:动画曲线,有 swing 缓冲运动   linear  匀速运动

参数四:回调函数

Jquery特殊效果 

fadeOut() 淡出
fadeToggle() 切换淡入淡出
hide() 隐藏元素
show() 显示元素
toggle() 切换元素的可见状态
slideDown() 向下展开
slideUp() 向上卷起
slideToggle() 依次展开或卷起某个元素

jquery对象的方法会在执行完后返回这个jquery对象,所有jquery对象的方法可以连起来写:

$('#div1') // id为div1的元素
.children('ul') //该元素下面的ul子元素
.slideDown('fast') //高度从零变到实际高度来显示ul元素
.parent()  //跳到ul的父元素,也就是id为div1的元素
.siblings()  //跳到div1元素平级的所有兄弟元素
.children('ul') //这些兄弟元素中的ul子元素
.slideUp('fast');  //高度实际高度变换到零来隐藏ul元素


jquery属性
html() 取出或设置html内容
prop() 取出或设置某个属性的值

jquery事件函数列表:

blur() 元素失去焦点
focus() 元素获得焦点
click() 鼠标单击
mouseover() 鼠标进入(进入子元素也触发)
mouseout() 鼠标离开(离开子元素也触发)
mouseenter() 鼠标进入(进入子元素不触发)
mouseleave() 鼠标离开(离开子元素不触发)
hover() 同时为mouseenter和mouseleave事件指定处理函数
ready() DOM加载完成
submit() 用户递交表单

正则表达式的写法:
var re=new RegExp('规则', '可选参数');
var re=/规则/参数;

规则中的字符 
1)普通字符匹配:
如:/a/ 匹配字符 ‘a’,/a,b/ 匹配字符 ‘a,b’

2)转义字符匹配:
d 匹配一个数字,即0-9
D 匹配一个非数字,即除了0-9
w 匹配一个单词字符(字母、数字、下划线)
W 匹配任何非单词字符。等价于[^A-Za-z0-9_]
s 匹配一个空白符
S 匹配一个非空白符
 匹配单词边界
B 匹配非单词边界
. 匹配一个任意字符

量词:对左边的匹配字符定义个数 

? 出现零次或一次(最多出现一次)
+ 出现一次或多次(至少出现一次)
* 出现零次或多次(任意次)
{n} 出现n次
{n,m} 出现n到m次
{n,} 至少出现n次

任意一个或者范围 
[abc123] : 匹配‘abc123’中的任意一个字符
[a-z0-9] : 匹配a到z或者0到9中的任意一个字符

限制开头结尾 
^ 以紧挨的元素开头
$ 以紧挨的元素结尾

修饰参数:
g: global,全文搜索,默认搜索到第一个结果接停止
i: ingore case,忽略大小写,默认大小写敏感

常用函数 
test
用法:正则.test(字符串) 匹配成功,就返回真,否则就返回假

正则默认规则 
匹配成功就结束,不会继续匹配,区分大小写

事件冒泡:在一个对象触发某类事件(比如click事件),如果点击此对象触发事件,不仅此对象被触发,父级也会被触发事件,一级级向上传,直至传到document结束

阻止事件冒泡

// event.stopPropagation();
// event.preventDefault();

// 合并写法:
return false;

事件委托:就是利用冒泡的原理,把事件加到父级上,通过判断事件来源的子集,执行相应的操作,事件委托首先可以极大减少事件绑定次数,提高性能;其次可以让新加入的子元素也可以拥有相同的操作。

事件委托优点:极大的减少了绑定事件的次数,提高性能,其次让新加入的元素也可以拥有相同的操作

写法: $ul.delegate(‘li’, ‘click’, function(){   这里的$(this)指的是当前冒泡的子级   })

Dom元素节点操作指的是改变html的标签结构,它有两种情况:
1、移动现有标签的位置
2、将新创建的标签插入到现有的标签中

创建新标签

var $div = $('<div>'); //创建一个空的div
var $div2 = $('<div>这是一个div元素</div>');

移动或者插入标签的方法 
1、append()和appendTo():在现存元素的内部,从后面放入元素

2、prepend()和prependTo():在现存元素的内部,从前面放入元素

3、after()和insertAfter():在现存元素的外部,从后面放入元素

4、before()和insertBefore():在现存元素的外部,从前面放入元素

删除标签

$('#div1').remove();

javascript中的对象,可以理解成是一个键值对的集合,键是调用每个值的名称,值可以是基本变量,还可以是函数和对象。

 创建javascript对象有两种方法,一种是通过顶级Object类来实例化一个对象,然后在对象上面添加属性和方法:

创建对象方法:var person = new Object()

对象直接量的方式:var person2 = {name:"summer",age:18}
调用属性和方法:
alert(person2.age);
person2.sayName();


json
类似于javascript对象的一种数据格式
注意:键名和值都需要写双引号,数字可以不写
特点:可以和对象的一样用点的方式调用
写法:{“name”:"summer","age":18}
数组的写法: [{“name”:"summer","age":18}]
嵌套的写法:{“name”:"summer","age":18,person:{“name”:"summer","age":18}}

ajax需要在服务器的环境下运行
常用参数:
1、url 请求地址
2、type 请求方式,默认是'GET',常用的还有'POST'
3、dataType 设置返回的数据格式,常用的是'json'格式,也可以设置为'html'
4、data 设置发送给服务器的数据
5、success 设置请求成功后的回调函数
6、error 设置请求失败后的回调函数
7、async 设置是否异步,默认值是'true',表示异步
 
 
 
原文地址:https://www.cnblogs.com/Jack666/p/9420438.html