庫和框架的區別?
- 庫(Library),可以理解為工具庫,里面有可以直接拿來使用的方法和工具,以及可以調用的API。
- 框架(Framework),可以理解為搭好的模型架子,可以直接往里面添加內容或進行裝飾。
jquery 能做什么?
操作數據,操作DOM,處理事件,處理Ajax,實現特效和動畫,實現HTML模板,實現組件/主題,實現圖表,實現App架構
jquery 對象和 DOM 原生對象有什么區別?如何轉化?
- jquery對象是通過jquery選擇器選擇的累數組對象,而非DOM元素。
- jquery無法使用DOM對象的任何方法,DOM對象不能使用jQuery里的方法。
jQuery對象 → 原生DOM對象:
$('.cls') //jquery對象
$('.cls')[0] //原生DOM對象
原生DOM對象 → jQuery對象:
var cls =document.querySelector(".cls");//原生DOM對象
$(cls);//jquery對象
jquery中如何綁定事件?on、off、trigger都有什么作用?使用on綁定事件使用事件代理的寫法?
在jquery1.7之前的版本中jQuery處理事件有多個方法,作用各不相同,后來統一的使用on/off方法。
on用于綁定事件、off用于解綁事件、trigger用于觸發事件(例如模擬click事件)
事件代理的用法如下
$('.ct').on('click', 'li', function(){
var str = $(this).text();
$('.text').text(str);
})
$('.ct').on('click.console', 'li', function(){
console.log($(this).text())
})
$('.ct').off('click.console')
// 當一個對象綁定多個同類事件的時候,可以給事件加一個命名空間(如上面的click.console),在解綁時只解綁單個事件。
$('.ct').trigger('click');
// 觸發click事件
jquery事件一覽
20150425QQ20150425-2@2x.png
jquery 如何展示/隱藏元素?
- 1,操作CSS
- .css('display', 'none')直接操作CSS
- .addClass添加設置好的CSS
- 2,動畫
顯示.show(speed,callback)
隱藏.hide(speed,callback)
切換元素的隱藏、顯示.toggle(speed,callback)
speed:可選參數;規定效果的時長。可取值:“slow”、“fast” 或毫秒。
callback:可選參數;動作完成后所執行的函數。
jquery 動畫如何使用?
.animate(style,speed,callback);
style:必須參數,定義形成動畫的 CSS 屬性。
speed:可選參數;規定效果的時長。可取值:“slow”、“fast” 或毫秒。
callback:可選參數;動畫完成后所執行的函數。
<style>
.box {width: 100px; height: 100px; color: red;}
</style>
<div class="box">Pandora</div>
<script>
$(".box").on("click", function(){
$(this).animate({
width: "200px",
height: "200px"
}, 600, function(){
//do something
});
});
</script>
如何設置和獲取元素內部 HTML 內容?如何設置和獲取元素內部文本?
- .text() 設置或獲取所選元素的文本內容。無參數時是獲取,有參數時是設置。
- .html() 設置或獲取所選元素的 HTML 。無參數時是獲取,有參數時是設置。
如何設置和獲取表單用戶輸入或者選擇的內容?如何設置和獲取元素屬性?
- .val():設置或獲取所表單的value。無參數時是獲取。有參數時是設置。
- .attr():設置或獲取元素的屬性。.attr("key")為獲取;.attr("key","value")為設置。如需設置多個屬性可以用.attr("{}")。
- .removeAttr()為刪除。