jquery 常用方法&ajax


問答

  1. Jquery 中$(document).ready()是什么意思?和window.onload 的區(qū)別?還有其他什么寫法或者替代方法?

如果你想要一個(gè)事件運(yùn)行在你的頁面上,你必須$(document).ready()里調(diào)用這個(gè)事件。所有包括在$(document).ready()里面的元素或事件都將會在DOM完成加載之后立即加載,并且在頁面內(nèi)容加載之前。
區(qū)別:
1、window.onload只能編寫一個(gè),即使編寫多個(gè)也只執(zhí)行一個(gè),而$(document).ready()則可編寫多個(gè)并且都可得到執(zhí)行;
2、window.onload需要等到頁面所有的元素(含圖片的加載)加載完成后才執(zhí)行,而$(document).ready()只需等到DOM準(zhǔn)備就緒時(shí)就執(zhí)行(不必等待所有元素加載完后再執(zhí)行);
3、window.onload是原生js中的,而 $(document).ready()需在調(diào)用jquery庫后才能使用;
4、window.onload不可簡寫,而$(document).ready()可簡寫成
$(function(){})
或者
$().ready(function(){})

2.$node.html()和$node.text()的區(qū)別?

  • $node.html()是獲取集合中第一個(gè)匹配元素的html內(nèi)容;當(dāng)()里面含有參數(shù)時(shí)則表示設(shè)置每個(gè)匹配元素的html內(nèi)容;
  • $node.text()是獲取匹配集合中每個(gè)元素的合并文本,包括他們的后代;當(dāng)()里含有參數(shù)時(shí),表示設(shè)置每個(gè)匹配元素的文本內(nèi)容為指定文本內(nèi)容;另外,$node.text()與$node.html()的不同在于$node.text()能夠在xml文檔中使用,而html不可以。

3.$.extend 的作用和用法?

$.extend的作用是將兩個(gè)或以上的對象內(nèi)容合并到第一個(gè)對象;

舉個(gè)例子


相同替換,不同疊加
相同替換,不同疊加

4.JQuery 的鏈?zhǔn)秸{(diào)用是什么?

 $('.ct').hide(3000).show(2000).css('background-color','yellow');

3秒隱藏后,3秒出現(xiàn),背景色變?yōu)辄S色。(這里有個(gè)小問題,按鈕點(diǎn)擊后背景色馬上變?yōu)辄S色 且同時(shí)發(fā)生hide動作,自以為大概是語句執(zhí)行的快,展示動作慢)
例子 JS bin

5.JQuery ajax 中緩存怎樣控制?

  • 1 .在請求的url后面加上一個(gè)隨機(jī)參數(shù)(*.do?random=Math.random);

  • 2.給jquery ajax請求設(shè)置禁用緩存的全局設(shè)置我們都知道在jquery ajax的的方法中有個(gè)cache參數(shù),如果設(shè)置為false,那么就不進(jìn)行緩存。用ajaxSetup() 方法,該方法可以為所有的ajax請求統(tǒng)一設(shè)置默認(rèn)參數(shù)。那么可以設(shè)置如下代碼:

$(function(){ $.ajaxSetup ({ 
    cache: false ;//關(guān)閉AJAX緩存 
     });
});

6.jquery 中 data 函數(shù)的作用。

Paste_Image.png

代碼

寫出以下功能對應(yīng)的 Jq 方法:
1.給元素 $node 添加 class active,給元素 $noed 刪除 class active

$node.addClass('active');
$node.removeClass('active');

2.展示元素$node, 隱藏元素$node

$node.show();
$node,hide();

3.獲取元素$node 的 屬性: id、src、title, 修改以上屬性

$node.attr('id');//獲取id
$node.attr('src');//獲取src
$node.attr('title');//獲取title
$node.attr('id','value');//修改id
$node.attr('src','value');//修改src
$node.attr('title','value');//修改title

4.給$node 添加自定義屬性data-src

$node.attr('data-src','value');

5.在$ct 內(nèi)部最開頭添加元素$node

$ct.pretent($node);

6.在$ct 內(nèi)部最末尾添加元素$node

$ct.append($node);

7.刪除$node

$node.remove();

8.把$ct里內(nèi)容清空

$ct.empty();

9.在$ct 里設(shè)置 html <div class="btn"></div>

$ct.html('<div class="btn"></div>');

10.獲取、設(shè)置$node 的寬度、高度(分別不包括內(nèi)邊距、包括內(nèi)邊距、包括邊框、包括外邊距)

//不包括內(nèi)邊距
$node.width();//獲取寬度
$node.height();//獲取高度
$node.width('value');//設(shè)置寬度
$node.height('value');//設(shè)置高度
//包括內(nèi)邊距
$node.innerWidth();//獲取包括內(nèi)邊距的寬度
$node.innerHeight();//獲取包括內(nèi)邊距的高度
$node.innerWidth('value');//設(shè)置包括內(nèi)邊距的寬度
$node.innerHeight('value');//設(shè)置包括內(nèi)邊距的高度
//包括邊框
$node.outerWidth();//獲取包括邊框?qū)挾?$node.outerHeight();//獲取包括邊框高度
$node.outerWidth('value');//設(shè)置包括邊框?qū)挾?$node.outerHeight('value');//設(shè)置包括邊框高度
//包括外邊距
$node.outerWidth(true);//獲取包括外邊距寬度
$node.outerHeight(true);//獲取包括外邊距高度

11.獲取窗口滾動條垂直滾動距離

 $node.scollTop();

12獲取$node 到根節(jié)點(diǎn)水平、垂直偏移距離

  $node.offset();//返回到根節(jié)點(diǎn)的top和left值

13.修改$node 的樣式,字體顏色設(shè)置紅色,字體大小設(shè)置14px

$node.css({
   'color': 'red',
   'font-size': '14px';
});

14.遍歷節(jié)點(diǎn),把每個(gè)節(jié)點(diǎn)里面的文本內(nèi)容重復(fù)一遍

$node.each(function(idx,val){
 console.log($(this).text(););
});

15.從$ct 里查找 class 為 .item的子元素

 $ct.find('.item');

16.獲取$ct 里面的所有孩子

$ct.children();

17.對于$node,向上找到 class 為’.ct’的父親,在從該父親找到.panel的孩子

$node.parents('.ct').find('.panel');

18.獲取選擇元素的數(shù)量

$node.length;

19.獲取當(dāng)前元素在兄弟中的排行

 $node.index();

代碼2 代碼預(yù)覽

代碼3 代碼預(yù)覽



              本文版權(quán)歸作者饑人谷_Josh和饑人谷所有,轉(zhuǎn)載請注明來源
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容