共计 11077 个字符,预计需要花费 28 分钟才能阅读完成。
Jquery 常用方法 1
在 Dom 加载完成后对 Dom 进行的操作
$(document).ready(function(){// 开始写 jQuery 代码...});
// 或者
$(function(){// 执行代码});
jquery 选择器
元素选择器
$(“p”) 表示选取所有的 p 元素
$(document).ready(function(){$("button").click(function(){$("p").hide();});
});
id 选择器
$(“#test”) 获取某一个元素的 id
class 选择器
$(“.test”) 获取 class=“test“的标签
更多实例
语法 |
描述 |
$(“*”) |
选取所有元素 |
$(this) |
选取当前 HTML 元素 |
$(“p.intro”) |
选取 class 为 intro 的 元素 |
$(“p:first”) |
选取第一个 元素 |
$(“ul li:first”) |
选取第一个
|
$(“ul li:first-child”) |
选取每个
|
$(“[href]”) |
选取带有 href 属性的元素 |
$(“a[target=’_blank’]”) |
选取所有 target 属性值等于 “_blank” 的 元素 |
$(“a[target!=’_blank’]”) |
选取所有 target 属性值不等于 “_blank” 的 元素 |
$(“:button”) |
选取所有 type=”button” 的 元素 和 |
$(“tr:even”) |
选取偶数位置的 |
$(“tr:odd”) |
选取奇数位置的 |
Jquery 事件
常用的 Jquery 事件方法
$(document).ready()
click()-> 点击时触发的函数
$("p").click(function(){$(this).hide();});
dblclick()-> 双击时触发
$("p").dblclick(function(){$(this).hide();});
mouseenter()-> 鼠标移入时触发
$("#p1").mouseenter(function(){alert('您的鼠标移到了 id="p1"的元素上!');
});
mouseleave()-> 鼠标移出时触发
$("#p1").mouseleave(function(){alert("再见,您的鼠标离开了该段落。");
});
mousedowm()-> 鼠标移入点击时触发
$("#p1").mousedown(function(){alert("鼠标在该段落上按下!");
});
mouseup()-> 鼠标松开按钮时触发
$("#p1").mouseup(function(){alert("鼠标在段落上松开。");
});
hover()-> 模拟光标悬停
$("#p1").hover(function(){alert("你进入了 p1!");
},
function(){alert("拜拜! 现在你离开了 p1!");
}
);
focus()-> 获取焦点时触发
$("input").focus(function(){$(this).css("background-color","#cccccc");
});
blur()-> 失去焦点时触发
$("input").blur(function(){$(this).css("background-color","#ffffff");
});
显示 / 隐藏
show()/hide()
$("#hide").click(function(){$("p").hide();});
$("#show").click(function(){$("p").show();});
show(soeed,callback)
当显示或隐藏有参数时,第一个参数表示秒数,可传可不传,最后传一个回调函数
// 以下是第二个参数的传递,jquery 自带
jQuery 自身提供 ”linear” 和 “swing”,其他可以使用相关的插件
$(document).ready(function(){$(".hidebtn").click(function(){$("div").hide(1000,"linear",function(){alert("Hide() 方法已完成!");
});
});
});
toggle()
点击的时候如果是显示就隐藏,如果是隐藏就显示
$("button").click(function(){$("p").toggle();});
语法:
$(selector).toggle(speed,callback);
可选的 speed 参数规定隐藏 / 显示的速度,可以取以下值:”slow”、”fast” 或毫秒。
可选的 callback 参数是隐藏或显示完成后所执行的函数名称。
淡入淡出
fadeIn() 方法 -> 淡入
jQuery fadeIn() 用于淡入已隐藏的元素。
$(selector).fadeIn(speed,callback);
可选的 speed 参数规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。.
可选的 callback 参数是 fading 完成后所执行的函数名称。
下面的例子演示了带有不同参数的 fadeIn() 方法:
$("button").click(function(){$("#div1").fadeIn();
$("#div2").fadeIn("slow");
$("#div3").fadeIn(3000);
});
fadeOut()-> 淡出
jQuery fadeOut() 方法用于淡出可见元素。
$(selector).fadeIn(speed,callback);
可选的 speed 参数规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。.
可选的 callback 参数是 fading 完成后所执行的函数名称。
下面的例子演示了带有不同参数的 fadeIn() 方法:
$("button").click(function(){$("#div1").fadeIn();
$("#div2").fadeIn("slow");
$("#div3").fadeIn(3000);
});
fadeToggle()-> 淡入淡出切换
jQuery fadeToggle() 方法可以在 fadeIn() 与 fadeOut() 方法之间进行切换。
如果元素已淡出,则 fadeToggle() 会向元素添加淡入效果。
如果元素已淡入,则 fadeToggle() 会向元素添加淡出效果。
语法:
$(selector).fadeToggle(speed,callback);
可选的 speed 参数规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。
可选的 callback 参数是 fading 完成后所执行的函数名称。
下面的例子演示了带有不同参数的 fadeToggle() 方法:
$("button").click(function(){$("#div1").fadeToggle();
$("#div2").fadeToggle("slow");
$("#div3").fadeToggle(3000);
});
fadeTo()-> 变为给定透明的
jQuery fadeTo() 方法允许渐变为给定的不透明度(值介于 0 与 1 之间)。
语法:
$(selector).fadeTo(speed,opacity,callback);
必需的 speed 参数规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。
fadeTo() 方法中必需的 opacity 参数将淡入淡出效果设置为给定的不透明度(值介于 0 与 1 之间)。
可选的 callback 参数是该函数完成后所执行的函数名称。
下面的例子演示了带有不同参数的 fadeTo() 方法:
$("button").click(function(){$("#div1").fadeTo("slow",0.15);
$("#div2").fadeTo("slow",0.4);
$("#div3").fadeTo("slow",0.7);
});
滑动
slideDown()-> 用于向下滑动
jQuery slideDown() 方法用于向下滑动元素。
语法:
$(selector).slideDown(speed,callback);
可选的 speed 参数规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。
可选的 callback 参数是滑动完成后所执行的函数名称。
下面的例子演示了 slideDown() 方法:
$("#flip").click(function(){$("#panel").slideDown();});
slideUp()-> 用于向上滑动元素
jQuery slideUp() 方法用于向上滑动元素。
语法:
$(selector).slideUp(speed,callback);
可选的 speed 参数规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。
可选的 callback 参数是滑动完成后所执行的函数名称。
下面的例子演示了 slideUp() 方法:
$("#flip").click(function(){$("#panel").slideUp();});
slideToggle()-> 向上滑动和向下滑动切换
jQuery slideToggle() 方法可以在 slideDown() 与 slideUp() 方法之间进行切换。
如果元素向下滑动,则 slideToggle() 可向上滑动它们。
如果元素向上滑动,则 slideToggle() 可向下滑动它们。
$(selector).slideToggle(speed,callback);
可选的 speed 参数规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。
可选的 callback 参数是滑动完成后所执行的函数名称。
下面的例子演示了 slideToggle() 方
$("#flip").click(function(){$("#panel").slideToggle();});
效果
animate()-> 创建自定义动画
jQuery animate() 方法用于创建自定义动画。
语法:
$(selector).animate({params},speed,callback);
必需的 params 参数定义形成动画的 CSS 属性。
可选的 speed 参数规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。
可选的 callback 参数是动画完成后所执行的函数名称。
下面的例子演示 animate() 方法的简单应用。它把
$("button").click(function(){$("div").animate({left:'250px'});
});
默认情况下,所有 HTML 元素都有一个静态位置,且无法移动。
如需对位置进行操作,要记得首先把元素的 CSS position 属性设置为 relative、fixed 或 absolute!
animate()— 操作多个属性
$("button").click(function(){$("div").animate({
left:'250px',
opacity:'0.5',
height:'150px',
width:'150px'
});
});
animate()— 使用相对值
$("button").click(function(){$("div").animate({
left:'250px',
height:'+=150px',
width:'+=150px'
});
});
animate()— 使用预定义的值
您甚至可以把属性的动画值设置为 “show”、”hide” 或 “toggle”:
$("button").click(function(){$("div").animate({height:'toggle'});
});
animate()— 使用队列功能
默认地,jQuery 提供针对动画的队列功能。
这意味着如果您在彼此之后编写多个 animate() 调用,jQuery 会创建包含这些方法调用的 ” 内部 ” 队列。然后逐一运行这些 animate 调用。
$("button").click(function(){var div=$("div");
div.animate({height:'300px',opacity:'0.4'},"slow");
div.animate({width:'300px',opacity:'0.8'},"slow");
div.animate({height:'100px',opacity:'0.4'},"slow");
div.animate({width:'100px',opacity:'0.8'},"slow");
});
$("button").click(function(){var div=$("div");
div.animate({left:'100px'},"slow");
div.animate({fontSize:'3em'},"slow");
});
停止动画
stop()-> 停止动画或效果在他们完成之前
jQuery stop() 方法用于停止动画或效果,在它们完成之前。
stop() 方法适用于所有 jQuery 效果函数,包括滑动、淡入淡出和自定义动画。
语法:
$(selector).stop(stopAll,goToEnd);
可选的 stopAll 参数规定是否应该清除动画队列。默认是 false,即仅停止活动的动画,允许任何排入队列的动画向后执行。
可选的 goToEnd 参数规定是否立即完成当前动画。默认是 false。
因此,默认地,stop() 会清除在被选元素上指定的当前动画。
下面的例子演示 stop() 方法,不带参数:
$("#stop").click(function(){$("#panel").stop();});
Callback()-> 动画执行成功之后的回调函数
许多 jQuery 函数涉及动画。这些函数也许会将 speed 或 duration 作为可选参数。
例子:$(“p”).hide(“slow”)
speed 或 duration 参数可以设置许多不同的值,比如 “slow”, “fast”, “normal” 或毫秒。
以下实例在隐藏效果完全实现后回调函数:
$("button").click(function(){$("p").hide("slow",function(){alert("段落现在被隐藏了");
});
});
$("button").click(function(){$("p").hide(1000);
alert("段落现在被隐藏了");
});
DOM 操作
获得内容
text()-> 设置或放回所选元素的文本内容
html()-> 设置或返回所选元素的内容(包括 HTML 标签)
val()-> 设置或返回表单字段的值
attr 获取属性
$(“button”).click(function(){
alert($(“#runoob”).attr(“href”));
});
$("button").click(function(){alert($("#runoob").attr("href"));
});
$("#btn1").click(function(){$("#test1").text("Hello world!");
});
$("#btn2").click(function(){$("#test2").html("Hello world!");
});
$("#btn3").click(function(){$("#test3").val("RUNOOB");
});
text()、html()、val() 的回调函数
上面的三个 jQuery 方法:text()、html() 以及 val(),同样拥有回调函数。回调函数有两个参数:被选元素列表中当前元素的下标,以及原始(旧的)值。然后以函数新值返回您希望使用的字符串。
下面的例子演示带有回调函数的 text() 和 html():
$("#btn1").click(function(){$("#test1").text(function(i,origText){return "旧文本:" + origText + "新文本: Hello world! (index:" + i + ")";
});
});
$("#btn2").click(function(){$("#test2").html(function(i,origText){return "旧 html:" + origText + "新 html: Hello world! (index:" + i + ")";
});
});
attr() 设置属性
jQuery attr() 方法也用于设置 / 改变属性值。
下面的例子演示如何改变(设置)链接中 href 属性的值:
$("button").click(function(){$("#runoob").attr({
"href" : "http://www.baidu.com",
"title" : "jQuery"
});
});
attr() 的回调函数
jQuery 方法 attr(),也提供回调函数。回调函数有两个参数:被选元素列表中当前元素的下标,以及原始(旧的)值。然后以函数新值返回您希望使用的字符串。
下面的例子演示带有回调函数的 attr() 方法:
$("button").click(function(){$("#runoob").attr("href", function(i,origValue){return origValue + "/jquery";});
});
添加元素
append()-> 在被选元素的尾部插入内容
append() 方法在被选元素的结尾插入内容(仍然在该元素的内部)。
$(“p”).append(“ 追加文本 ”);
prepend()-> 被选元素的开头插入内容
prepend() 方法在被选元素的开头插入内容。
$(“p”).prepend(“ 在开头追加文本 ”);
通过 append() 和 prepend() 方法添加若干新元素
在上面的例子中,我们只在被选元素的开头 / 结尾插入文本 /HTML。
不过,append() 和 prepend() 方法能够通过参数接收无限数量的新元素。可以通过 jQuery 来生成文本 /HTML(就像上面的例子那样),或者通过 JavaScript 代码和 DOM 元素。
在下面的例子中,我们创建若干个新元素。这些元素可以通过 text/HTML、jQuery 或者 JavaScript/DOM 来创建。然后我们通过 append() 方法把这些新元素追加到文本中(对 prepend() 同样有效):
function appendText(){var txt1=" 文本 -1。
"; // 使用 HTML 标签创建文本
var txt2=$("").text("文本 -2。"); // 使用 jQuery 创建文本
var txt3=document.createElement("p");
txt3.innerHTML="文本 -3。"; // 使用 DOM 创建文本 text with DOM
$("body").append(txt1,txt2,txt3); // 追加新元素
}
after() 和 before() 方法
jQuery after() 方法是每个匹配元素之后插入内容。
jQuery before() 方法在每个匹配元素之前插入内容。
通过 after() 和 before() 方法添加若干新元素
after() 和 before() 方法能够通过参数接收无限数量的新元素。可以通过 text/HTML、jQuery 或者 JavaScript/DOM 来创建新元素。
在下面的例子中,我们创建若干新元素。这些元素可以通过 text/HTML、jQuery 或者 JavaScript/DOM 来创建。然后我们通过 after() 方法把这些新元素插到文本中(对 before() 同样有效):
function afterText()
{var txt1="I "; // 使用 HTML 创建元素
var txt2=$("").text("love"); // 使用 jQuery 创建元素
var txt3=document.createElement("big"); // 使用 DOM 创建元素
txt3.innerHTML="jQuery!";
$("img").after(txt1,txt2,txt3); // 在图片后添加文本
}
删除元素
remove()-> 删除被选元素及其子元素
empty()-> 删除被选元素的子元素
注意:以上的方法都可以传递参数,允许对被删元素进行过滤
$(“p”).remove(“.italic”);
jquery 操作 css
jQuery 拥有若干进行 CSS 操作的方法。我们将学习下面这些:
- addClass() – 向被选元素添加一个或多个类
- removeClass() – 从被选元素删除一个或多个类
- toggleClass() – 对被选元素进行添加 / 删除类的切换操作
- css() – 设置或返回样式属性
addClass()-> 向不同元素添加不同的 class 属性
$(“button”).click(function(){
$(“h1,h2,p”).addClass(“blue”);
$(“div”).addClass(“important”);
});
// 也可以在 addClass()-> 方法中规定多个类
$(“button”).click(function(){
$(“body div:first”).addClass(“important blue”);
});
removeClass()-> 删除指定的 class 属性
$("button").click(function(){$("h1,h2,p").removeClass("blue");
});
toggleClass()-> 对添加 / 删除元素进行切换
$("button").click(function(){$("h1,h2,p").toggleClass("blue");
});
CSS 方法
css()-> 设置或返回被选元素的一个或多个样式属性
$(“p”).css(“background-color”);
返回第一个 p 标签的 css 背景颜色值
设置指定的 css 属性
下面的例子将为所有匹配元素设置 background-color 和 font-size:
$(“p”).css({“background-color”:”yellow”,”font-size”:”200%”});
尺寸
width()-> 设置或返回元素的宽度(不包括内边距、边框或外边距)。
height()-> 设置或返回元素的高度(不包括内边距、边框或外边距)
$("button").click(function(){
var txt="";
txt+="div 的宽度是:" + $("#div1").width() + "";
txt+="div 的高度是:" + $("#div1").height();
$("#div1").html(txt);
});
innerWidth()-> 返回元素的宽度 (包括内边距)
innerHeight()-> 返回元素的高度 (包括内边距)
$("button").click(function(){
var txt="";
txt+="div 宽度,包含内边距:" + $("#div1").innerWidth() + "";
txt+="div 高度,包含内边距:" + $("#div1").innerHeight();
$("#div1").html(txt);
});
outerWidth()-> 返回元素的宽度(包括内边距和边框)
outerHeight()-> 返回元素的高度(包括内边距和边框)
$("button").click(function(){
var txt="";
txt+="div 宽度,包含内边距和边框:" + $("#div1").outerWidth() + "";
txt+="div 高度,包含内边距和边框:" + $("#div1").outerHeight();
$("#div1").html(txt);
});
向上遍历 DOM 元素
parent()-> 返回被选元素的直接父元素
该方法只会向上一级对 DOM 树进行遍历。
$(document).ready(function(){$("span").parent();});
parents()-> 返回被选元素的所有祖先元素、直到 html
您也可以使用可选参数来过滤对祖先元素的搜索。
下面的例子返回所有 元素的所有祖先,并且它是
- 元素:
$(document).ready(function(){$("span").parents("ul");
});
parentsUntil(‘ 元素 ’)-> 返回介于俩个给定元素之间的所有祖先元素
$(document).ready(function(){$("span").parentsUntil("div");
});
向下遍历 DOM 树
children()-> 返回被选元素的所有直接子元素
该方法只会向下一级对 DOM 树进行遍历。
下面的例子返回每个
$(document).ready(function(){$("div").children();});
find()-> 返回被选元素的所有后代
$(document).ready(function(){$("div").find("span");
});
在 DOM 树中遍历其他兄弟类
siblings()-> 同一父级下的所有其他兄弟类
$(document).ready(function(){$("h2").siblings("p");
});
// 可以传递参数,参数代表哪个兄弟元素
next()-> 返回被选元素的下一个弟弟元素
$(document).ready(function(){$("h2").nextAll();});
nextAll()-> 返回被选元素的所有弟弟元素
$(document).ready(function(){$("h2").nextAll();});
nextUntil()-> 返回所选俩个元素之间的所有兄弟元素
$(document).ready(function(){$("h2").nextUntil("h6");
});
prev(), prevAll() & prevUntil() 方法
prev(), prevAll() 以及 prevUntil() 方法的工作方式与上面的方法类似,只不过方向相反而已:它们返回的是前面的同胞元素(在 DOM 树中沿着同胞之前元素遍历,而不是之后元素遍历)。
过滤
first()-> 返回被选元素的首个元素
$(document).ready(function(){$("div p").first();});
last()-> 返回被选元素的最后一个元素
$(document).ready(function(){$("div p").last();});
eq()-> 返回备选元素中带有指定索引号的元素
$(document).ready(function(){$("p").eq(1);
});
filter()-> 自设定的标准来实现
$(document).ready(function(){$("p").filter(".url");
});
not()-> 返回不匹配标准的所有元素(与 filter 相反)
$(document).ready(function(){$("p").not(".url");
});
原文地址: Jquery 的常用方法