jQuery 基础
1. 说说库和框架的区别?
库可以说是一个函数库,里面放了各种api,库的内部做了各种封装和各种兼容实现,所以使得代码更简单,效率更高。框架相当于一个模板,可以往框架里面填充内容来创建项目。
2. jquery 能做什么?
jQuery是一个Javascript库,可以让用户更简单的进行HTML文档DOM遍历、操作、事件处理、动画,以及使用Ajax。且具有多浏览器兼容性。
3. jquery 对象和 DOM 原生对象有什么区别?如何转化?
区别:jQuery对象是在DOM原生对象上做了一层包装,只能使用jQuery对象方法,不能使用DOM原生对象方法,同理DOM原生对象也不能使用jQuery对象方法
转换:① jQuery对象转原生JSvar btn = $('#btn')[0]; ②原生JS转jQuery对象var btn = document.getElementById('btn'); var $btn = $(btn);
4. jquery中如何绑定事件?bind、unbind、delegate、live、on、off都有什么作用?推荐使用哪种?使用on绑定事件使用事件代理的写法?
绑定事件一般使用on: $(XX).on( events [,selector ] [,data ], handler(eventObject) ); 这是1.7版本后统一的写法。
在这之前,各种事件都有自己单独的绑定语句,比如click,有$(xx).click( [eventData ], handler ),
bind()也是一种绑定事件的方法,但是已经被弃用了。
unbind()用来解绑事件,同样也弃用。
delegate(),用来执行事件委托,语法是:.delegate( selector, eventType, eventData, handler )
live(),$(xx).live( events [, data ], handler )也是一种事件委托的方式,其中第二的参数可以传入selector,live给document绑定一个事件,当有事件触发时,判定事件源是否匹配selector,是的话则执行handler里的语句。
off对应于on,用来解绑事件:.off( events [, selector ] ),不传入参数时会移除对象身上所有的事件。
推荐使用on,它的功能最齐全,也是官方推荐的事件绑定语法。handler(eventObject) ); 这是1.7版本后统一的写法。
5. jquery 如何展示/隐藏元素?
通过hide函数和show函数来显示和隐藏
通过添加删除active类来展示隐藏元素
通过css的display属性来展示、隐藏元素
6. jquery 动画如何使用?
$(selector).animate({params},speed,callback);
//例子
$('#box').animate({left:'30px',top:'100px'},500);
7. 如何设置和获取元素内部 HTML 内容?如何设置和获取元素内部文本?
$('#ele').html() //获取
$('#ele').html(value) //设置
$('#ele').text();
$('#ele').text(value);
8. 如何设置和获取表单用户输入或者选择的内容?如何设置和获取元素属性?
$('input').val() //获取value
$('input').val('newValue') //设置新的value
$('img').attr('src'); //获取img的scr
$('img').attr('src','http://XXX/i/eg_tulip.jpg') //设置img的src