問答
Jquery 中, $(document).ready()是什么意思梯找?和window.onload 的區(qū)別罗标? 還有其他什么寫法或者替代方法显沈?
- $(document).ready()是指當DOM已經(jīng)加載,并且頁面內(nèi)容(包括圖像)都呈現(xiàn)出來的時候才觸發(fā)ready()執(zhí)行代碼志电。
*window.onload 是在dom文檔樹加載完和所有文件加載完之后執(zhí)行一個函數(shù);也就是說$(document).ready要比window.onload先執(zhí)行曙咽。 - $(document).ready()還可以寫成$(function(){});
$node.html()和$node.text()的區(qū)別?
- $node.html()是指設置或返回所選元素的內(nèi)容(包括 HTML 標記)。
- $node.text()是指 設置或返回所選元素的文本內(nèi)容挑辆。
$.extend 的作用和用法?
- 1例朱、合并(覆蓋)對個對象
var obj1={name:"laoli",age:26};
var obj2={sex:"boy",age:28};
console.log($.extend(obj1,obj2) );
輸出結(jié)果:
Objectage: 28name: "laoli"sex: "boy"__proto__: Object
后者覆蓋前者
- 2孝情、深度嵌套對象
<span style="font-size:18px;">
jQuery.extend( { name: “John”, location: { city: “Boston” } },
{ last: “Resig”, location: { state: “MA” } } );
// 結(jié)果: // => { name: “John”, last: “Resig”, location: { state: “MA” } }
// 新的更深入的:
.extend() jQuery.extend( true, { name: “John”, location: { city: “Boston” } }, { last: “Resig”, location: { state: “MA” } } );
// 結(jié)果 // => { name: “John”, last: “Resig”, // location: { city: “Boston”, state: “MA” } } </span>
- 3、給jquery添加靜態(tài)方法
<html>
<head>
<title></title>
</head>
<body>
<script type="text/javascript" src="jquery.2.0.3.js"></script>
<script type="text/javascript">
$.extend({ add:function(a,b){return a+b;},
minus:function(a,b){return a-b},
multiply:function(a,b){return a*b;},
divide:function(a,b){return Math.floor(a/b);}
});
var sum = $.add(3,5)+$.minus(3,5)+$.multiply(3,5)+$.divide(5,7);
console.log(sum);
</script>
</body>
</html>
JQuery 的鏈式調(diào)用是什么洒嗤?
jQuery的鏈式調(diào)用是指在書寫的時候可以把方法寫在一起而不需要分開單獨書寫箫荡。例如:
myjq.css().css().show().hide();//可以寫在一起單獨作用
JQuery ajax 中緩存怎樣控制?
設置cache屬性即可:cache (默認:true, dataType為"script"和"jsonp"時默認為false)如果設置為 false ,瀏覽器將不緩存此頁面渔隶。注意: 設置cache為 false將在 HEAD和GET請求中正常工作羔挡。它的工作原理是在GET請求參數(shù)中附加"_={timestamp}"
jquery 中 data 函數(shù)的作用?
- 作用:data() 方法向被選元素附加數(shù)據(jù),或者從被選元素獲取數(shù)據(jù)间唉。
通過data()函數(shù)存取的數(shù)據(jù)都是臨時數(shù)據(jù)婉弹,一旦頁面刷新,之前存放的數(shù)據(jù)都將不復存在终吼。該函數(shù)屬于jQuery對象(實例)镀赌。如果需要移除通過data()函數(shù)存放的數(shù)據(jù),請使用 removeData() 函數(shù)际跪。 - jquery data的使用方式:
1商佛、獲取附加的data的值
$(selector).data(name)
//參數(shù)說明:
//name:可選。規(guī)定要取回的數(shù)據(jù)的名稱姆打。
//如果沒有規(guī)定名稱良姆,則該方法將以對象的形式從元素中返回所有存儲的數(shù)據(jù)。
2幔戏、用name和value為對象附加數(shù)據(jù)
$(selector).data(name,value)
//參數(shù)說明:
//selector:為需要附加或者獲取數(shù)據(jù)的對象玛追。
//name:參數(shù)為數(shù)據(jù)的名稱。
//value:參數(shù)為數(shù)據(jù)的值闲延。
3痊剖、使用對象向元素附加數(shù)據(jù)
使用帶有名稱/值對的對象向被選元素添加數(shù)據(jù)。
除了以提供 name 和 value 的方式進行賦值垒玲,我們還可以直接傳入另一個對象( “another” )作為參數(shù)陆馁。這種情況下,“another” 的屬性名稱和屬性值將被視為多個鍵值對合愈,從中提取的 “name” 和 “value” 都會被復制到目標對象的緩存中叮贩。
$(selector).data(object)
//參數(shù)說明:
//object:必需。規(guī)定包含名稱/值對的對象佛析。
代碼
代碼一
- 給元素 $node 添加 class active益老,給元素 $noed 刪除 class active
$node.addClass('active');//添加class
$node.removeClass('active');//刪除class
- 展示元素$node, 隱藏元素$node
$node.show();//展示node
$node.hide();//隱藏node
- 獲取元素$node 的 屬性: id、src寸莫、title捺萌, 修改以上屬性
獲取:
$('div').attr("class","box");
//[div#btn.box]
$('div').attr("id","btn");
//[div#btn.box]
$('div').attr("src","");
//[div#btn.box]
$('div').attr("src","http:www.xxx.com");
//[div#btn.box]
設置:
$('div').attr("class","ctn");
//[div#btn.ctn]
$('div').attr("id","ctn");
//[div#ctn.ctn]
$('div').attr("src","http:www.yyy.com");
//[div#ctn.ctn]
- 給$node 添加自定義屬性data-src
$node.attr("data-src","cccc");
- 在$ct 內(nèi)部最開頭添加元素$node
$('.ct').prepend('<li>nihao</li>');
- 在$ct 內(nèi)部最末尾添加元素$node
$('.ct').append('<li>nihao</li>');
- 刪除$node
$node.remove();
- 把$ct里內(nèi)容清空
$ct.empty();
- 在$ct 里設置 html <div class="btn"></div>
$ct.html('<div class="btn"></div>');
- 獲取储狭、設置$node 的寬度互婿、高度(分別不包括內(nèi)邊距捣郊、包括內(nèi)邊距、包括邊框慈参、包括外邊距)
獲惹荷:
$node.width();
$node.height();
設置:
$node.width(500);``
$node.height(300);
- 獲取窗口滾動條垂直滾動距離
$(window)..scrollTop();
- 獲取$node 到根節(jié)點水平、垂直偏移距離
$node.offset();
- 修改$node 的樣式驮配,字體顏色設置紅色娘扩,字體大小設置14px
$node.css({"color":"red","font-size":"14px"});
- 遍歷節(jié)點,把每個節(jié)點里面的文本內(nèi)容重復一遍
$node.each(function(){
console.log( $(this).text() );
});
- 從$ct 里查找 class 為 .item的子元素
$ct.find('.item')
- 獲取$ct 里面的所有孩子
$ct.children()
- 對于$node壮锻,向上找到 class 為’.ct’的父親琐旁,在從該父親找到’.panel’的孩子
$node, parents('.ct').find('.panel');
- 獲取選擇元素的數(shù)量
$node.length();
- 獲取當前元素在兄弟中的排行
$node.index();