題目1: jQuery 能做什么?
jquery主要是用來簡化javascript的各種操作以及解決各種瀏覽器之間的兼容性
題目2: jQuery 對象和 DOM 原生對象有什么區(qū)別随橘?如何轉化稻薇?
jQuery對象和DOM原生對象是兩種不同的對象類型蹲诀,兩者不等價洒敏,并且無法使用對方的方法來操作各自的對象
在jQuery對象后面加[index]就可以相等DOM原生對象
相反 則用$()包裹DOM原生對象就可以相等jQuery對象
題目3:jQuery中如何綁定事件魄鸦?bind壁畸、unbind前酿、delegate患雏、live、on罢维、off都有什么作用淹仑?推薦使用哪種?使用on綁定事件使用事件代理的寫法肺孵?
jQuery中提供了四種事件監(jiān)聽方式匀借,分別是bind(在3.0版本已經移除)、live(在1.7版本已經移除)平窘、delegate(在3.0版本已經移除)吓肋、on,對應的解除監(jiān)聽的函數(shù)分別是unbind瑰艘、die是鬼、undelegate、off
- bind():向匹配元素添加一個或多個事件處理器 紫新,當目標是動態(tài)添加的時候不會觸發(fā)均蜜,需要重新綁定
$(selector).bind(event,data,fn)
event:必需項;添加到元素的一個或多個事件芒率,例如 click,dblclick等
data:可選囤耳;需要傳遞的參數(shù)
fn:必需;當綁定事件發(fā)生時,需要執(zhí)行的函數(shù) - unbind(): 用于解除bind的綁定 $(selector).undind(event)
- live():把函數(shù)綁定到$(document)元素上 ,任何時候只要有事件冒泡到document節(jié)點上充择,它就查看該事件以及該事件的目標元素是否匹配德玫,如果都是的話,則執(zhí)行函數(shù)聪铺。另外它僅能針對直接的CSS選擇器做操作
$(selector).live(event,data,fn)
event:必需項化焕;添加到元素的一個或多個事件,例如 click,dblclick等
data:可選铃剔;需要傳遞的參數(shù)
fn:必需;當綁定事件發(fā)生時查刻,需要執(zhí)行的函數(shù) - delegate():與live()類似键兜,但是是綁定具體的元素上,因此速度會比live()快
$(selector).delegate(childselector,event,data,fn)
childselector:可選穗泵;子元素選擇器
event:必需項普气;添加到元素的一個或多個事件,例如 click,dblclick等
data:可選佃延;需要傳遞的參數(shù)
fn:必需现诀;當綁定事件發(fā)生時,需要執(zhí)行的函數(shù) - on():在選擇元素上綁定一個或多個事件的事件處理函數(shù)履肃,推薦使用 仔沿。$(selector).on(event,childselector,data,fn)
childselector:可選;子元素選擇器
event:必需項尺棋;添加到元素的一個或多個事件封锉,例如 click,dblclick等
data:可選;需要傳遞的參數(shù)
fn:必需膘螟;當綁定事件發(fā)生時成福,需要執(zhí)行的函數(shù) - off(): 解除on的綁定 $(selector).off(types)
題目4:jQuery 如何展示/隱藏元素?
使用$(selector).hide()隱藏和$(selector).show()展示元素
題目5: jQuery 動畫如何使用荆残?
使用animate()方法執(zhí)行css屬性集
$(selector).animate(styles,speed,easing,callback)
styles:CSS樣式使用DOM名稱
speed:規(guī)定動畫的速度奴艾,默認為"normal",可選'毫秒值','slow','fast'
easing:規(guī)定動畫的easing函數(shù),'swing'和'liner'
callback:animate函數(shù)執(zhí)行后内斯,要執(zhí)行的函數(shù)
題目6:如何設置和獲取元素內部 HTML 內容蕴潦?如何設置和獲取元素內部文本?
$(selector).html():html()為空時是獲取元素內部html內容嘿期,有內容時則為傳遞一個參數(shù)來設置
$(selector).text():text()為空時是獲取元素內部text內容品擎,有內容時則為傳遞一個參數(shù)來設置
題目7:如何設置和獲取表單用戶輸入或者選擇的內容?如何設置和獲取元素屬性备徐?
$(selector).attr():attr()為空時是獲取元素屬性萄传,有內容時則為傳遞一個參數(shù)來設置
$(selector).val():val()為空時是獲取表單中元素的值,有內容時則為傳遞一個參數(shù)來設置