题目1: jQuery 能做什么?
jquery主要是用来简化javascript的各种操作以及解决各种浏览器之间的兼容性
题目2: jQuery 对象和 DOM 原生对象有什么区别?如何转化?
jQuery对象和DOM原生对象是两种不同的对象类型,两者不等价,并且无法使用对方的方法来操作各自的对象
在jQuery对象后面加[index]就可以相等DOM原生对象
相反 则用$()包裹DOM原生对象就可以相等jQuery对象
题目3:jQuery中如何绑定事件?bind、unbind、delegate、live、on、off都有什么作用?推荐使用哪种?使用on绑定事件使用事件代理的写法?
jQuery中提供了四种事件监听方式,分别是bind(在3.0版本已经移除)、live(在1.7版本已经移除)、delegate(在3.0版本已经移除)、on,对应的解除监听的函数分别是unbind、die、undelegate、off
- bind():向匹配元素添加一个或多个事件处理器 ,当目标是动态添加的时候不会触发,需要重新绑定
$(selector).bind(event,data,fn)
event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等
data:可选;需要传递的参数
fn:必需;当绑定事件发生时,需要执行的函数 - unbind(): 用于解除bind的绑定 $(selector).undind(event)
- live():把函数绑定到$(document)元素上 ,任何时候只要有事件冒泡到document节点上,它就查看该事件以及该事件的目标元素是否匹配,如果都是的话,则执行函数。另外它仅能针对直接的CSS选择器做操作
$(selector).live(event,data,fn)
event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等
data:可选;需要传递的参数
fn:必需;当绑定事件发生时,需要执行的函数 - delegate():与live()类似,但是是绑定具体的元素上,因此速度会比live()快
$(selector).delegate(childselector,event,data,fn)
childselector:可选;子元素选择器
event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等
data:可选;需要传递的参数
fn:必需;当绑定事件发生时,需要执行的函数 - on():在选择元素上绑定一个或多个事件的事件处理函数,推荐使用 。$(selector).on(event,childselector,data,fn)
childselector:可选;子元素选择器
event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等
data:可选;需要传递的参数
fn:必需;当绑定事件发生时,需要执行的函数 - off(): 解除on的绑定 $(selector).off(types)
题目4:jQuery 如何展示/隐藏元素?
使用$(selector).hide()隐藏和$(selector).show()展示元素
题目5: jQuery 动画如何使用?
使用animate()方法执行css属性集
$(selector).animate(styles,speed,easing,callback)
styles:CSS样式使用DOM名称
speed:规定动画的速度,默认为"normal",可选'毫秒值','slow','fast'
easing:规定动画的easing函数,'swing'和'liner'
callback:animate函数执行后,要执行的函数
题目6:如何设置和获取元素内部 HTML 内容?如何设置和获取元素内部文本?
$(selector).html():html()为空时是获取元素内部html内容,有内容时则为传递一个参数来设置
$(selector).text():text()为空时是获取元素内部text内容,有内容时则为传递一个参数来设置
题目7:如何设置和获取表单用户输入或者选择的内容?如何设置和获取元素属性?
$(selector).attr():attr()为空时是获取元素属性,有内容时则为传递一个参数来设置
$(selector).val():val()为空时是获取表单中元素的值,有内容时则为传递一个参数来设置