访问和操作DOM元素
控制页面样式
对页面事件处理
大量插件在页面中的应用
与Ajax技术的完美结合
npm :Node.js打包管理工具
安装:nodejs
下载资源 : npm install(可简写 i) -g jQuery -g全局,可省略;
淘宝镜像 cnpm
删除资源 : cnpm uninstall jQuery
可以单个和链式操作,也可以传一个对象,当传一个样式名则是获取传的样式的样式值
如果样式名存在则删除,反之添加
1) click()不带on的事件名方法,元素.click({语句})
2)on(‘事件名’,函数)
如果链式操作.off()则是解绑
注意元素元素不能用jquery,可以通过$()转换,清楚this指向
获取触发事件元素的下标,在自己兄弟标签里面的下标:参数是限制在那个兄弟里排序;
用法一: lis.each(function (i,el){}),each()
用法二:$.each(需要循环的数组,函数fn())
prev():上一个兄弟标签,返回jq对象
prevAll():获取上面所有的兄弟标签
next():下一个兄弟标签
nextAll():获取下面所有的兄弟标签parent():父级
parents():所有祖先级,包括父级,参数为指定范围; children():所有子元素
find():找到某一个元素的所有后代元素,参数必须:限定需要找的
创建标签:$('')
插入内容html(),传参是设置,不传参是获取
val(参):设置input的value值,不传参获取值
插入页面父级.append():参数为插入的标签
父级.prepend()
appendTo():用法$(‘选择器’).appendTo(‘父级’)
insertAfter()
insertBefore()
创建.prependTo(父级);
14、动画效果
hide():让元素隐藏时候有动画效果,参数一:过渡时间,参数二:函数,运动结束后执行的代码
show():让元素显示时候有动画效果,参数同上
toggle():隐藏就显示,反之显示就隐藏,参数同上
sideUp():百叶窗效果
sideDown():参数同上
slideToggle()
fadeOut():消失
fadeIn():出现
fadeToggle():参数同上
animate():让样式从一个值变化的到另一个值有动画效果,用法:$(‘box’).animate({设置变化的样式})
ps:有数字变化的值才有
animate({样式},time,linear匀速,function(){})
swing:先加速在减速,ps:相当于加了定时器,先关闭定时器$(‘box’).stop().animate(…) ;
outerwidth():元素宽
15、面向对象:另外一种写代码的方式
象: 抽离对象,将一些代码抽离封装
面向对象和面向过程的区别
面向过程:代码一步一步编码
面向对象的特点:
代码简洁
复用性墙
层次分明
具有继承性
可扩展性强
可维护性高
面向对象的组成部分:抽离,封装,继承
对象申明的两种方式
var obj={};
var obj1=new Object()
es6当中当键值一样时可以省略(属性值是一个变量,变量与属性一样;属性值是函数叫方法)
工厂模式:将对象封装在函数中,目的是为了创建对象
注意:工厂模式this指向不明确
构造函数:函数名首字母大写,并通过new操作符运算,返回一个对象;new在运算函数时偷偷干的事情:创建一个对象,改变this指向为它自己创建的对象,把它创建的对象return出来
delete:只能删除某个对象下面的属性;
函数:是一个特殊的对象,当创建一个函数时,就相当于一个对象,系统会自动给函数添加一个属性值,属性叫:prototype,值是一个对象,这个对象叫做原型对象
原型链:当创建一个对象时,系统会自动给对象添加一个属性__proto__;值是一个对象,对象是原型对象,这个对象指向它的构造函数的原型对象;在原型链中会自动生成属性constructor,值就是该实例对象的构造函数
ps:在函数里面添加属性,在原型对象里面写方法
== 继承==
赋值赋址(和数据类型有关系)
拷贝继承:浅拷贝和深拷贝
json数据
例如:var str=’[1,3,4,“333”]’;
var str1=’{“name”:“li”,“age”:18}’;
把json数据转为对象:JSON.parse(json数据)
把对象转为json数据:JSON.stringify(对象)