jQuery框架中$.ajax()的常用参数有哪些?写一个post请求并带有发送数据和返回数据的样例。
- async:是否异步
- url:请求地址
- contentType:发送信息至服务器时内容编码类型
- data:发送到服务器的数据
- dataType:预期服务器返回的数据类型
- type:请求类型
- success:请求成功回调函数
- error:请求失败回调函数
|
|
jQuery一个对象可以同时绑定多个事件,如何实现的?
多个事件同一个函数
$('#div').on('click mouseover',function(){});
多个事件不同函数
|
|
jQuery的slideUp动画,如果目标元素是被外部事件驱动,当鼠标快速地连续触发外部事件元素,动画会滞后的反复执行,该如何处理?
jQuery.stop();
如:$('#div').stop().animate({width:'100px',100});
jQuery停止动画事件:
|
|
jquery.extend与jquery.fn.extend的区别?
jquery.extend
为jquery
类添加类方法,可以理解为静态方法
jquery.fn.extend
在源码中jquery.fn==jquery.prototype
,所以对jquery.fn
的扩展,就是为jquery
类添加成员函数
使用:jquery.extend
扩展,需要通过jquery
类来调用,而jquery.fn.extend
扩展,所有jquery
实例都可以直接调用。
jquery与jquery UI有啥区别?
jquery是一个js库,主要提供的功能是选择器,属性修改和事件绑定等。
jquery UI则是在jquery的基础上,利用jquery的扩展性,设计的插件。提供了一些常用的界面元素,诸如对话框、拖动行为、改变大小行为等等。
jquery中如何将数组转换为json字符串,然后再转换回来?
jquery中没有提供这个功能,所以你需要先编写两个jquery的扩展:
|
|
然后调用:
$("").stringifyArray(array)
针对jquery的优化方法?
基于class的选择器的性能相对于id选择器开销很大,因为需要遍历所有的DOM元素。优先使用ID选择器。
频繁的DOM操作,先缓存起来再操作。用jquery的链式调用更好。
如:var str = $("a").attr("href");
- for循环每一次都查找了数组arr的length属性,在开始循环的时候设置一个变量来存储这个数字,可以让循环跑的更快。
for (var i = size, length = arr.length; i < length; i++) {}
jquery.fn的init方法返回的this指的是什么对象?为什么要返回this?
this执行init构造函数自身,其实就是jquery实例对象,返回this是为了实现jquery的链式操作。