JQuery
2016-07-21 10:47:28 0 举报
AI智能生成
jQuery是一个快速、简洁的JavaScript库,它简化了HTML文档遍历、事件处理、动画效果和Ajax交互等Web开发任务。通过使用少量的代码,jQuery可以帮助开发者实现复杂的功能,提高开发效率。jQuery的设计遵循易于扩展的原则,可以通过插件来增强其功能。同时,jQuery兼容各种主流浏览器,使得开发者可以专注于编写业务逻辑,而无需担心浏览器兼容性问题。总之,jQuery是一个强大且灵活的JavaScript库,为Web开发提供了便捷的工具和方法。
作者其他创作
大纲/内容
操作DOM元素
使用attr()方法控制元素的属性
$("#a1").attr("href" , "www.imooc.com");
设置id为a1的标签的href属性为www.imooc.com
操作元素的内容html()和text()
var $content = "唉,我又变胖了!";
$("#html").html($content);
效果:唉,我又变胖了!
$("#text").text($content);
效果:唉,我又变胖了!
操作元素的样式addClass()和css()
$("#content").css({"background-color":"red","color":"white"});
设置背景颜色为红色前景色为白色
移除属性和样式removeAttr(name)和removeClass(class)
$("#content").removeClass("blue white");
移除蓝色背景和白色前景
使用append()方法向元素内追加内容
$("body").append( "
我是调用函数创建的
"; 向body添加标签
使用appendTo()方法向被选元素内插入内容
$($html).appendTo("div");
将$html插入到div中
使用before()和after()在元素前后插入内容
$(".green").after($html);
在类green的后边插入$html
使用clone()方法复制元素
$("body").append($(".red").clone());
想body后追加复值的一个元素
替换内容replaceWith()和replaceAll()
$(".green").replaceWith("我是土豪");
替换元素为我是土豪
使用wrap()和wrapInner()方法包裹元素和内容
$(".red").wrapInner("");
将.red用i标签包裹起来,即所有文字变成斜体
使用each()方法遍历元素
$("span").each(function (index) {
if (index == 1) {
$(this).attr("class", "red");
}
});
使用remove()方法删除元素
remove()方法删除所选元素本身和子元素,该方法可以通过添加过滤参数指定需要删除的某些元素
使用empty()方法删除元素
empty()方法则只删除所选元素的子元素。
JQuery事件
页面加载时触发ready()事件
ready()事件类似于onLoad()事件,但前者只要页面的DOM结构加载后便触发,而后者必须在页面全部元素加载成功才触发,ready()可以写多个,按顺序执行。
$(document).ready(function(){})等价于$(function(){});
$(document).ready(function(){
$("#btntest").bind("click", function () {
$("#tip").html("我被点击了!");
});
});
使用bind()方法绑定元素的事件
bind()方法绑定元素的事件非常方便,绑定前,需要知道被绑定的元素名,绑定的事件名称,事件中执行的函数内容就可以
$(function(){
$("#btntest").bind("click",
function(){
$(this).attr("disabled","true");
}
)
}
);
使用hover()方法切换事件
hover()方法的功能是当鼠标移到所选元素上时,执行方法中的第一个函数,鼠标移出时,执行方法中的第二个函数,实现事件的切实效果
$(selector).hover(over,out);
$(function () {
$("div").hover(
function () {
$(this).addClass("orange");
},
function () {
$(this).removeClass("orange")
})
});
使用toggle()方法绑定多个函数
toggle()方法可以在元素的click事件中绑定两个或两个以上的函数,同时,它还可以实现元素的隐藏与显示的切换
$(selector).toggle(fun1(),fun2(),funN(),...)
使用unbind()方法移除元素绑定的事件
$(selector).unbind(event,fun)
使用one()方法绑定元素的一次性事件
$(selector).one(event,[data],fun)
调用trigger()方法手动触发指定的事件
trigger()方法可以直接手动触发元素指定的事件,这些事件可以是元素自带事件,也可以是自定义的事件,总之,该事件必须能执行
$(selector).trigger(event)
文本框的focus事件
文本框的blur事件
下拉列表框的change事件
当一个元素的值发生变化时,将会触发change事件,例如在选择下拉列表框中的选项时,就会触change事件。
调用live()方法绑定元素的事件
与bind()方法相同,live()方法与可以绑定元素的可执行事件,除此相同功能之外,live()方法还可以绑定动态元素,即使用代码添加的元素事件
$(selector).live(event,[data],fun)
参数event为事件名称,data为触发事件时携带的数据,fun为触发该事件时执行的函数
注意:从 jQuery 1.7 开始,不再建议使用 .live() 方法。1.9不支持.live()
JQuery动画特效
调用show()和hide()方法显示和隐藏元素
$(selector).hide(speed,[callback])和$(selector).show(speed,[callback])
参数speed设置隐藏或显示时的速度值,可为“slow”、“fast”或毫秒数值,可选项参数callback为隐藏或显示动作执行完成后调用的函数名。
调用toggle()方法实现动画切换效果
$(selector).toggle(speed,[callback])
使用slideUp()和slideDown()方法的滑动效果
可以使用slideUp()和slideDown()方法在页面中滑动元素,前者用于向上滑动元素,后者用于向下滑动元素
$(selector).slideUp(speed,[callback])和$(selector).slideDown(speed,[callback])
要注意的是:slideDown()仅适用于被隐藏的元素;slideup()则相反。
使用slideToggle()方法实现图片“变脸”效果
使用slideToggle()方法可以切换slideUp()和slideDown(),即调用该方法时,如果元素已向上滑动,则元素自动向下滑动,反之,则元素自动向上滑动
$(selector).slideToggle(speed,[callback])
使用fadeIn()与fadeOut()方法实现淡入淡出效果
fadeIn()和fadeOut()方法可以实现元素的淡入淡出效果,前者淡入隐藏的元素,后者可以淡出可见的元素
$(selector).fadeIn(speed,[callback])和$(selector).fadeOut(speed,[callback])
使用fadeTo()方法设置淡入淡出效果的不透明度
$(selector).fadeTo(speed,opacity,[callback])
其中speed参数为效果的速度,opacity参数为指定的不透明值,它的取值范围是0.0~1.0,可选项参数callback为效果完成后,回调的函数名。
调用animate()方法制作简单的动画效果
$(selector).animate({params},speed,[callback])
params参数为制作动画效果的CSS属性名与值,speed参数为动画的效果的速度,单位为毫秒,可选项callback参数为动画完成时执行的回调函数名
调用animate()方法制作移动位置的动画
调用animate()方法不仅可以制作简单渐渐变大的动画效果,而且还能制作移动位置的动画,在移动位置之前,必须将被移元素的“position”属性值设为“absolute”或“relative”,否则,该元素移动不了。
调用stop()方法停止当前所有动画效果
stop()方法的功能是在动画完成之前,停止当前正在执行的动画效果,这些效果包括滑动、淡入淡出和自定义的动画
$(selector).stop([clearQueue],[goToEnd])
两个可选项参数clearQueue和goToEnd都是布尔类型值,前者表示是否停止正在执行的动画,后者表示是否完成正在执行的动画,默认为false。
调用delay()方法延时执行动画效果
$(selector).delay(duration)
其中参数duration为延时值,它的单位是毫秒,当超过延时值时,动画继续执行
总结题
基础选择器(9)
id选择器
$("#divtest").html()
获得id为divtest的文本
元素选择器
$("button").attr("disabled","true");
设置button元素 为不可用
类选择器
$(".red").html();
获得类名为red的文本内容
*选择器
$("form *").attr("disabled", "true");
设置form的所有元素为不可用
sele1,sele2,seleN选择器
$(".red,.green").html("hi,我们的样子很美哦!");
设置类名red,green的文本为hi,我们的样子
ance(父元素) desc(后代元素)选择器
$("div label").css("background-color","blue");
设置div中的所有label的背景颜色为蓝色
parent > child选择器
$("div>label").css("border", "solid 5px red");
设置div中的所有label元素但是不包括孙子辈的边框为5px红色
prev + next选择器
$("p+label").css("background-color","red");
设置p标签最近的下一个label元素的背景颜色为红色
prev ~ siblings选择器
$("p~label").html("我们都是p先生的粉丝");
设置p标签的下边的所有label元素内容为我们是p先生的粉丝
过滤选择器(11)
:first(:last)过滤选择器
$("li:last").css("background-color", "red");
获取li标签中的最后一个元素,并设置背景颜色为红色
:eq(index)过滤选择器
$("li:eq(2)").css("background-color", "#60F");
设置li标签的第三个元素的背景颜色为紫色
:contains(text)过滤选择器
$("li:contains('jQuery')").css("background", "green");
设置li标签的内容含有jQuery设置背景颜色为绿色
:has(selector)过滤选择器
$("li:has('label')").css("background-color", "blue");
设置li标签的含有label标签的背景颜色为蓝色
:hidden过滤选择器
$("input:hidden").val();
获取input中的隐藏的元素中的输入值(val())
:visible过滤选择器
$("li:visible").css("background-color","blue");
设置li标签中的可见的标签背景颜色为蓝色
[attribute=value]属性选择器
$("li[title='蔬菜']").css("background-color", "green");
设置li标签中的title=蔬菜的背景颜色为绿色
[attribute!=value]属性选择器
$("li[title!='蔬菜']").css("background-color", "green");
设置li标签中的title!=蔬菜的背景颜色为绿色
[attribute*=value]属性选择器
$("li[title*='果']").css("background-color", "green");
设置li标签中的title含有果的背景颜色为绿色
:first-child子元素过滤选择器
$("li:first-child").css("background-color", "green");
设置li标签中的第一个子标签的背景颜色为绿色
:last-child子元素过滤选择器
$("li:last-child").css("background-color", "blue");
设置li标签中的最后一个子标签的背景颜色为蓝色
表单选择器(10)
:input表单选择器
//注意#formTest后有空格
$("#frmTest :input").addClass("bg_blue");
为id为frmtest的所有表单元素添加蓝色背景
:text表单文本选择器
$("#frmTest :text").addClass("bg_blue");
设置表单id为from的text元素添加蓝色背景
:password表单密码选择器
$("#frmTest :password").addClass("bg_red");
设置表单id为from的password元素添加蓝色背景
:radio单选按钮选择器
$("#frmTest :radio").attr("disabled","true");
设置表单中的radio为不可用
:checkbox复选框选择器
$("#frmTest :checkbox").attr("disabled","true");
设置表单中的复选框为不可用
:submit提交按钮选择器
$("#frmTest input:submit").addClass("bg_red");
为表单中的submit添加红色背景颜色
:image图像域选择器
$("#frmTest :image").addClass("bg_red");
为表单中的image添加红色背景颜色
:button表单按钮选择器
$("#frmTest :button").addClass("bg_blue");
为表单中的button添加红色背景颜色
:checked选中状态选择器
$("#frmTest :checked").attr("disabled", true);
设置表单中已经选择的为不可用
:selected选中状态选择器
$("#frmTest :selected").text();
获取表单中下拉列表已经选择的内容
JQuery和Ajax
使用load()方法异步请求数据
使用load()方法通过Ajax请求加载服务器中的数据,并把返回的数据放置到指定的元素中
load(url,[data],[callback])
收藏
收藏
0 条评论
下一页