jQuery方法.docx

上传人:b****5 文档编号:29034921 上传时间:2023-07-20 格式:DOCX 页数:24 大小:24.58KB
下载 相关 举报
jQuery方法.docx_第1页
第1页 / 共24页
jQuery方法.docx_第2页
第2页 / 共24页
jQuery方法.docx_第3页
第3页 / 共24页
jQuery方法.docx_第4页
第4页 / 共24页
jQuery方法.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

jQuery方法.docx

《jQuery方法.docx》由会员分享,可在线阅读,更多相关《jQuery方法.docx(24页珍藏版)》请在冰豆网上搜索。

jQuery方法.docx

jQuery方法

向下兼容的插件:

jquery-migrate-1.2.1.js

子元素过滤器:

:

nth-child(index)$(".1li:

nth-child

(2)")找到.1类下的第二个li元素(li要指明出来)与:

eq(index)类似,eq从0开始,nth-child从1开始

setInterval("startRequest()",1000);

get():

get(0)获得元旦DOM元素

prop(“checked”):

返回布尔值,判断checkbox是否被选中

size()

find():

父元素中寻找子元素

children()

css()

next()

nextall()

prev()

prevAll()

siblings():

同级上下所有指定元素

prevUntil():

遇到指定元素停止选定

nextUntil()

first()

last()

not():

not(“:

checked”)

eq():

$(".1li").eq

(2).html()同过滤器一样要加上筛选元素li

has():

选择子类有指定类型的指定标签$("ul").has("[title=one]");$("ul").has(".red")

parent():

选择包含有指定元素的元素

paretnsUntil():

遇到指定父节点然后停止

attr()

removeAttr()

is()例1:

$(‘.red’).is($(‘li’).get

(2));判断$(‘.red’)是否$(‘li’).get

(2)元素判断是否为同一元素

例2:

alert($(“.red”).is(function(){

return$(this).attr(‘title’)==”列表3”;

}));注意,必须使用$(this)来表示要判断的元素,否则,不管function里面是否反回true,false都和调用的元素无关

hasClass()返回true和false

slice(start,end):

选择从start到end位置的元素,如果是负数,则从后开始

end():

找到前一个状态(在链式方法中)

例:

$("li").slice(1,-1).first().end()相当于$("li").slice(1,-1)

contents():

获得某元素下面所有的元素节点,包括文本节点

filter()灵活性高例1:

$(“li”).filter(“.red,:

first,:

last”).css(“background”,”#ccc”);选择li的class为red的元素,加上首位li元素

例2:

$(“li”).filter(function(){

return$(this).attr(‘class’)==’red’&&$(this).attr(‘title’)==’列表3’;

}).css(“background”,”#ccc”);

选择出class为red并且title属性为列表3的li元素

html():

例:

$(‘div’).html($(‘div’).html()+”Text”);内容追加

例:

以函数形式追加$(‘div’).html(function(index,value){

returnvalue+’Text’;

});

text()

val():

设置获取表单内容

each()

addClass()

removeClass()

toggleClass()默认样式和指定样式的切换

width():

已经转化为number,可以直接运算

height():

offset():

获取某个元素相对于视口的偏移位置,返回的对象有两个属性left和top

position():

获取某个元素相对于父元素的偏移位置

scrollTop()获取垂直滚动条的值$(window).

scrollTop(value)设置垂直滚动条的值$(window).

scrollLeft()获取水平滚动条的值$(window).

scrollLeft(value)设置水平滚动条的值$(window).

append():

向指定元素内部的后面插入

appendTo():

插入到指定元素内部的后面

prepend():

向指定元素内部的前面插入

prependTo():

插入到指定元素内部的前面

after():

在后面插入

before():

在前面插入

insertafter():

移到指定元素后面

insertbefore():

移到指定元素前面

wrap():

包裹标签例:

$(“div“).wrap(“”);

unwrap():

例:

$("strong").unwrap($("div"));不要被某个元素包裹

wrapAll():

所有指定元素包裹在一个指定标签里面例:

$("div").wrapAll("");

wrapInner():

包裹指定元素里面的子元素内容

clone():

参数true,false(深克隆,浅克隆)默认为false

remove():

移除节点(不保留事件)例:

$(“div”).remove(“.box”);删除.box样式的div

detach():

移除节点(保留事件)

empty():

清空里面内容

replaceWith()取代

replaceAll()取代

表单选择器:

:

input使用:

input可以选择全部的表单元素,而直接用input只能选择一部分

:

text

:

password

:

radio

:

checkbox

:

submit

:

reset

:

image

:

button

:

file

:

hidden

表单过滤器:

:

enable

:

disable

:

checked

:

selected

例:

$(":

input[name=select]:

selected").val()选择器与过滤器直接要有空格隔开,否则选择不了

事件:

bind()

unbind()

click()

dblclick()

mousedown()

mouseup()

mouseover()

mouseout()

mousemove()

mouseenter()

mouseleave()

keydown()

keyup()e.keyCode键码

keypress()e.charCode字符编码

unload()

resize()$(window).resize()

scroll()$(window).scroll()

select()选取表单里面内容时发生

change()元素内容改变时发生

submit()

mouseenter()enter会不触发子节点

mouseover()over会触发子节点

mouseout()out会触发子节点

mouseleave()()leave会不触发子节点

例:

200px;height:

200px;background:

green;">

100px;height:

100px;background:

red;">

添加事件$('div').mouseover();:

移入div会触发,移入p再触发:

$('div').mouseenter();:

穿过div或者p,在这个区域只触发一次

focus()当前绑定的input元素触发(只能是input绑定该事件才有效)

blur()当前绑定的input元素触发

focusin()如果绑定的是input元素的父节点,也可以触发其子元素input(如div绑定该事件)

focusout()如果绑定的是input元素的父节点,也可以触发其子元素input

hover(F1,F2):

鼠标移入时执行F1函数,移出时执行F2函数

toggle()已经废弃

自己构造toggle方法:

varflag=1;

$("#toggle").click(function(){

if(flag==1){

$(this).css("background","black");

flag=2;

}elseif(flag==2){

$(this).css("background","green");

flag=3;

}elseif(flag==3){

$(this).css("background","blue");

flag=1;

}

});

事件对象:

Function(e){

returne.target;

}

属性

type

target是获取触发元素的DOM,触发元素,就是你点了哪个就是哪个

data获取事件调用的额外数据

$('input').click({user:

'Lee',age:

100},function(e){

alert(e.data.user);//Lee

});

relatedTarget获取移入移出目标点离开或进入的那个DOM元素(绑定在mouseover事件)

currentTarget得到的是监听元素的DOM,你绑定的哪个就是哪个

pageX/pageY

screen/screen

clientX/clientY

timeStamp

which获取鼠标的左中右键(1,2,3)或获取键盘按键(绑定在click事件)

altKey/shiftKey/ctrlKey是否按下alt,shift,ctrl

方法:

同时阻止事件冒泡和默认行为

$(“a”).click(function(){

returnfalse;

})

event.stopPropagation():

阻止事件冒泡

event.preventDefault():

阻止默认行为

isDefaultPrevented()判断是否调用了preventDefault()方法

isPropagationStopped()判断是否调用了stopPropagation()方法

stopImmediatePropagation()取消事件冒泡,并取消该事件的后续事件处理函数

isImmediatePropagationStopped()判断是否调用了stopImmediatePropagation()方法

triggler():

$(":

button").trigger("click");

例:

$(":

button").click(function(e,data1,data2){

alert(data1+":

"+data2);

}).trigger("click",["123","asd"]);

trigglerHandler()与trigger()区别:

(1)..triggerHandler()方法不会触发事件的默认行为

(2)triggerHandler()方法会返回当前事件执行的返回值,trigger()则返回当前包含事件触发元素的jQuery对象(3)triggerHandler()方法只会影响第一个匹配到的元素,而.trigger()会影响所有(4)triggerHandler()不会冒泡

命名空间:

$(":

button").bind("click.aa",function(){

alert("aaa");

});

click()

事件委托:

动态绑定功能(可以为新添加的元素绑定事件,bind不能实现)

on():

将div1子元素下button的事件都委托给父亲div1(可以动态增加button)

例:

$(".div1").on("click",":

button",function(){

$(this).clone().appendTo(".div1");

})

但本事div1是没有事件的,点击div1本身没有事件发生

如果clone(true)的话是事件绑定不是事件委托

off():

移除事件委托例:

$(".div1").off("click",":

button");

one():

只触发一次事件

动画效果:

show():

显示(有回调函数)

例:

$('#box').show('slow',function(){

alert('动画持续完毕后,执行我!

');

});

列队动画:

$('div').first().show('fast',functionshowSpan(){显示完一个再显示另一个

$(this).next().show('fast',showSpan);

});

hide():

隐藏

toggle():

结合show()和hide()

slideDown():

向上滑动

slideUp():

向下滑动

slideToggle():

结合slideDown()和slideUp()

fadeIn():

淡入

fadeout():

淡出

fadeToggle():

结合fadeIn()和fadeOut()

fadeTo():

例:

$(".div1").fadeTo(1000,0.33)

自定义动画:

animate()里面可以放CSS样式,回调函数例:

$('#box').animate({

'margin-top':

'300px',

'height':

'200px'

},1000,function(){

alert('动画执行完毕执行我!

');

});

自定义动画的累加、累减功能:

$('#box').animate({

'margin-left':

'+=100px',

});

//通过连缀实现列队动画

$('.animate').click(function(){

$('#box').animate({

'left':

'100px'

}).animate({

'top':

'100px'

}).animate({

'width':

'300px'

});

});

//通过回调函数实现列队动画

$('.animate').click(function(){

$('#box').animate({

'left':

'100px'

},function(){

$('#box').animate({

'top':

'100px'

},function(){

$('#box').animate({

'width':

'300px'

});

});

});

});

如果动画方法,连缀可以实依次列队,而.css()方法不是动画方法,会在一开始传入列队之前

queue()里面放CSS样式实现列队动画方式(最好):

$('#box').slideUp('slow').slideDown('slow').queue(function(){

$(this).css('background','orange');

});

如果queue后面好像增加动画需要queue里面函数需要next参数,调用next()

$('#box').slideUp('slow').slideDown('slow').queue(function(next){

$(this).css('background','orange');

next();

}).hide('slow');

获取当前列队的长度,fx是默认列队的参数

$("#box").queue('fx').length;

stop():

停止动画,如果是列队动画停止的话那么会停止掉第一个动画,后面继续执行后面的动画

例:

$('#box').stop(true,true);

第一个参数为true的话,就是停止并且清除后面的列队动画,动画完全停止

第二个参数为true的话,就是停止后会跳转到末尾的位置上

delay():

延迟效果

一个过滤器:

animated,这个过滤器可以判断出当前运动的动画是哪个元素

//递归执行自我,无线循环播放

$('#box').slideToggle('slow',function(){

$(this).slideToggle('slow',arguments.callee);

});

//停止正在运动的动画,并且设置红色背景

$('.button').click(function(){

$('div:

animated').stop().css('background','red');

});

//设置运行帧数为1000毫秒

$.fx.interval=1000;//默认为13

//设置动画为关闭true

$.fx.off=true;//默认为false

swing(缓动)(两头慢中间快)、linear(匀速),默认为swing。

$('#box').animate({

left:

'800px'

},'slow','swing');

$('#pox').animate({

left:

'800px'

},'slow','linear');

Ajax异步:

load():

可以用于异步分页(需要服务器)将页面内容或服务器返回内容加载到元素上

例:

$('input').click(function(){

$('#box').load('test.html');将页面内容加载到box上

});

$('#box').load('test.html.my');可以加上选择器对test.html内容筛选

//get方式接受的PHP,默认是get

$('input').click(function(){

$('#box').load('test.php?

url=ycku');

});

//传递data,则为post方式post提交时用对象键值对{}

$('input').click(function(){

$('#box').load('test.php',{

url:

'ycku'

});

});

回调函数:

response是服务器返回的内容,status是返回的状态(成功:

status==”success”),

xhr.responseText等于response内容,xhr.status返回的是数字(成功200)

$('input').click(function(){

$('#box').load('test.php',{

url:

'ycku'

},function(response,status,xhr){

alert('返回的值为:

'+response+',状态为:

'+status+',

状态是:

'+xhr.statusText);

});

});

$.get():

例:

$('input').click(function(){

$.get('test.php?

url=ycku',function(response,status,xhr){

if(status=='success'){

$('#box').html(response);

}

})

});

get提交参数还有其他两种:

{url:

ycku;}或者’url=ycku’

$.post():

例:

$.post('test.php',{

url:

'ycku'

},function(response,status,xhr){

$('#box').html(response);

});

post提交参数两种:

{url:

ycku;}或者’url=ycku’

get获取XML数据:

//使用$.get()异步返回xmlresponse是XMLObject对象

$('input').click(function(){

$.get('test.xml',function(response,status,xhr){

$('#box').html($(response).find('root').find('url').text());

});//type自动转为xml

});

test.xml内容:

xmlversion=”1.0”?

>

get获取JSON数据:

//使用$.get()异步返回json

$.get('test.json',function(response,status,xhr){

alert($(response)[0].url);

});

test.json内容:

[

{“url”:

””}

]

 

$.getScript()例:

$('input').click(function(){当点击按钮时test.js文件才被加载

$.getScript('test.js');

});

$.getJSON()例:

$('input').click(function(){

$.getJSON('test.json',function(response,status,xhr){

alert(response[0].url);

});

});

也可以服务器返回json格式的字符串,再$.get()方法后面添加”json”参数强制转换类型(xml也可以)

$(":

input").click(function(){

$.get("AjaxTest.php",function(response,stutas,xhr){

alert(response);

alert($(response)[0].url);

},"json");

});

AjaxTest.php内容:

php

echo'[{"url":

""}]';

?

>

$.ajax()异步最底层方法:

$('input').click(function(){

$.ajax({

type:

'POST',

url:

'test.php',

data:

{

url:

'ycku'

},

success:

function(response,stutas,xhr){

$('#box').html(response);

}

});

});

Serialize()表单序列化:

$('forminput[type=button]').click(function(){

$.ajax({

type:

'POST',

url:

'test.php',

data:

$('form')

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 金融投资

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1