Jquery使用心得

白馬酒涼發表於2013-07-11

1.<form>提交時,會提交裡面有name屬性的元素,而不是id屬性
  $("#form").serialize();

     得到裡面每個元素的拼接值 id=1&name=xiaohong

  $("#form").serializeArray();

     得到json陣列{"Name":"id","Value":"1"}
                          {"Name":"name","Value":"xiaohong"}

2.當input或select是disabled時,這些元素不會提交,可以加個隱藏的同樣name屬性的input

3.console.log("hello")可以寫文字到控制檯,文字長或需要迴圈檢視值時比alert好用多了

4.判斷IE版本是否小於IE8 時,如果是IE9相容模式,$.browser.version會顯示7.0,不能準確判斷。

可以使用$.browser.msie && navigator.userAgent.indexOf('Trident') <0

$.browser
{
 msie : true,
 version : "7.0"
}

navigator.userAgent
"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; MDDC; .NET4.0C; .NET4.0E)"

5.得到元素高度
$("#content").height();
$("#content").innerHeight();//元素內部區域高度,忽略padding、border
$("#content").outerHeight();//忽略邊框
$("#content").outerHeight(true);//包含邊框高度

6. 使用eval()可以將字串轉換成json物件
var jsonStr='[{"id":"id","name":"xiaohong"},{"id":"2","name":"xiaoming"}]';
var json=eval(jsonStr);
json[0]
{
 id : "id",
 name : "xiaohong"
}
json[1]
{
 id : "2",
 name : "xiaoming"
}

7.得到當前時間
var d=new date()
d.getYear();
d.getMonth();
d.getDay();
d.getHours();
d.getMinutes();
d.getSeconds();

8.Jquery選擇器
匹配E元素之後的兄弟元素
div ~ p

匹配所有跟在label後面的input元素
$('label+input')

匹配含有某屬性的元素
div[title]

匹配某屬性結尾/開頭/含有man的元素
div[title$='man']
div[title^='man']
div[title*='man']

匹配沒有某class的元素
div:not(.class1)

匹配第一個符合條件元素後面的所有符合條件的元素
$('input:not(first)')

9.當頁面某部分重新整理時候,避免原來的事件失效,使用live
$('input').live('change',function(){});

10.在一紮元素的迴圈中當判斷是否某元素
$('input').each(function(){

  if($(this).is('#stop')){

    return false;

 }

});

11.判斷當前元素是父元素的第幾個,取父元素的第幾個
$('.pdiv').index(this)
$('.pdiv').eq(3)







 

相關文章