1.同一函数实现set和get
Jquery中的很多方法都是如此,主要包括如下几个: $("#msg").html(); //返回id为msg的元素节点的html内容。 $("#msg").html("<b>new content</b>"); //将“<b>new content</b>” 作为html串写入id为msg的元素节点内容中,页面显示粗体的new content$("#msg").text(); //返回id为msg的元素节点的文本内容。
$("#msg").text("<b>new content</b>"); //将“<b>new content</b>” 作为普通文本串写入id为msg的元素节点内容中,页面显示<b>new content</b>$("#msg").height(); //返回id为msg的元素的高度
$("#msg").height(300); //将id为msg的元素的高度设为300 $("#msg").width(); //返回id为msg的元素的宽度 $("#msg").width(300); //将id为msg的元素的宽度设为300$("input").val("); //返回表单输入框的value值
$("input").val("test"); //将表单输入框的value值设为test$("#msg").click(); //触发id为msg的元素的单击事件
$("#msg").click(fn); //为id为msg的元素单击事件添加函数 同样blur,focus,select,submit事件都可以有着两种调用方法$("#msg").css("background"); //返回元素的背景颜色
$("#msg").css("background","#ccc") //设定元素背景为灰色$("#msg").attr("disabled"); //返回disabled属性 $("#msg").attr("disabled","disabled"); //设置disabled属性 $("#msg").removeAttr("disabled"); //移除disabled属性
2.操作class
$("#msg").addClass("select"); //为元素增加名称为select的class $("#msg").removeClass("select"); //删除元素名称为select的class $("#msg").toggleClass("select"); //如果存在(不存在)就删除(添加)名称为select的class $("#msg").hasClass("select"); //判断数组是否存在这个class,返回布尔型
3.事件处理
$("#msg").click(function(){alert("good")}) //为元素添加了单击事件 ( 还有 dblclick()双击事件 change()改变事件 mouseover()鼠标悬停事件 )自定义事件
(1)hover(fn1,fn2):一个模仿悬停事件(鼠标移动到一个对象上面及移出这个对象)的方法。当鼠标移动到一个匹配的元素上面时,会触发指定的第一个函数。当鼠标移出这个元素时,会触发指定的第二个函数。 //当鼠标放在表格的某行上时将class置为over,离开时置为out。 $("tr").hover(function(){ $(this).addClass("over"); }, function(){ $(this).addClass("out"); });(2)toggle(evenFn,oddFn): 每次点击时切换要调用的函数。如果点击了一个匹配的元素,则触发指定的第一个函数,当再次点击同一元素时,则触发指定的第二个函数。随后的每次点击都重复对这两个函数的轮番调用。
//每次点击时轮换添加和删除名为selected的class。 $("p").toggle(function(){ $(this).addClass("selected"); },function(){ $(this).removeClass("selected"); });(3)trigger(eventtype): 在每一个匹配的元素上触发某类事件。
例如: $("p").trigger("click"); //触发所有p元素的click事件(4)bind(eventtype,fn),unbind(eventtype): 事件的绑定与反绑定 现在事件绑定用on()比较好
从每一个匹配的元素中(添加)删除绑定的事件。 例如: $("p").bind("click", function(){alert($(this).text());}); //为每个p元素添加单击事件 $("p").unbind(); //删除所有p元素上的所有事件 $("p").unbind("click") //删除所有p元素上的单击事件(5)ready(fn):当DOM载入就绪可以查询及操纵时绑定一个要执行的函数。
$(document).ready(function(){alert("Load Success")})4.处理集合,数组也可以处理json数据
$.each(obj, fn):通用的迭代函数。(为每个匹配元素执行函数) $.each( 要遍历的, function(index(对象的角标), n(遍历出来的对象)){ alert( "Name: " + index + ", Value: " + n ); });5.添加删除元素
append() 在被选元素内的元素前插入内容prepend() 在被选元素内的元素后插入内容after() 在被选元素后插入内容before() 在被选元素前插入内容remove() 删除被选元素及子元素empty() 删除被选元素的子元素 6.遍历 向上遍历:parent() 返回被选元素的直接父元素parents() 返回被选元素的所有祖先元素parents() 返回介于两个给定元素之间的祖先元素 向下遍历:children() 返回被选元素的下一级所有子元素find() 返回获得所有下级元素 水平遍历:siblings() 返回被选元素的所有同胞元素next() 返回被选元素的下一个同胞nextAll() 返回被选元素的所有跟随同胞nextUntil() 返回介于两个给定参数之间的所有跟随同胞元素prev() 上一个同胞preAll()preUntil()filter() 方法将匹配元素集合缩减为匹配指定选择器的元素 (eg. $('li').filter(':even').css('background-color', 'red');)
not() 与filter()方法相反7.jQuery效果
隐藏hide()和显示show() hide(speed,callback); (speed可以设速度 “slow” 或“fast” 或毫秒 callback 写一个函数在动画100%后才执行) toggle 点击隐藏再点击显示淡入fadeIn()淡出fadeout()
fodeToggle() 淡入淡出循环fadeto() 允许渐变为给定的不透明度 (eg. $("#nn").fadeTo(5000,0.7))(速度5000毫秒,不透明度0.7)滑动
slideDown() 向下滑动slideUp() 向上滑动slideToggle() 滑动循环移动 animate({css样式},speed,callback)
(eg. $("div").animate(){ lefet:'250px', (注意后面加逗号) opacity:'0.5', height:'+=150px', (高度增加150px)} width:'150px' },5000) 停止stop(stopAll,goToEnd); (stopAll()默认false是否清除动画队列),goToEnd()默认false是否立即完成))
8.$.ajax
$.ajax({
url: "/juzhangmail/addlist", type: "post", async: true, data: $("form").serialize(), /* serialize()序列化为a=1&b=2&c=3样式的字符串, serializeArray(),序列化为json类型的数据,返回的是json对象 ,不是json字符串 */ dataType: "json", complete: function(xmlhttprequest) {}, success: function(data) { var da = $.parseJSON(data); //json字符串转json对象 }, error: function(xmlhttprequest, textstatus, errorthrown) {} });把对象序列化为JSON对象 JSON.stringify(要序列化的对象)