(一)jq的链式编程是怎么实现的呢?
链式操作是通过对象上的方法最后return this 把对象再返回回来 就可以在使用方法了;如果是获取值,return 回来的就不是this,就会破坏链式编程
(二)jq的入口函数 window.onload与$(function(){})?
1-window.onload的区别
01-window.onload 等页面加载完毕后执行(所有资源DOM树、外联其他文件、媒体资源) --
02-也就是说window.onload 的是等页面文档、外部的js文件、css文件、图片加载完毕才执行内部代码。
2-$(function(){ })相当于$(document).ready(function(){ });
01-一旦dom结构渲染完毕即可执行内部代码。
02-相当于页面加载的事件,可以执行多次。
等同于
(三)jq怎么扩展插件
1-通过$.extend()来扩展jQuery:
$.extend({
damahou:function(name){
console.log('我是'+name)
}
})
$.damahou('肖大侠1号')
2-通过$.fn 向jQuery添加新的方法3-this指代的是我们在调用该插件时,用jQuery选择器选中的元素,return 之后可以链式编程
4-通过$.widget()应用jQuery UI的部件工厂方式创建。
(四)jq有什么选择器?
1-基本选择器
2-层级选择器
3-过滤器选择器
4-选择器筛选方法
筛选选择器的功能与过滤选择器有点类似,但是用法不一样,筛选选择器主要是方法。
5-操作类名-添加类名
6-操作类名-移出类名
7-操作类名-检测类名是否存在;
8-操作类名-类名的切换