从零开始学 Web 之 jQuery(八)each,多库共存,包装集,插件
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新......
- github:https://github.com/Daotin/Web
- 微信公众号:Web前端之巅
- 博客园:http://www.cnblogs.com/lvonve/
- CSDN:https://blog.csdn.net/lvonve/
在这里我会从 Web 前端零基础开始,一步步学习 Web 相关的知识点,期间也会分享一些好玩的项目。现在就让我们一起进入 Web 前端学习的冒险之旅吧!

一、each 方法
each 方法用来遍历 jQuery 对象的,它的参数是一个事件处理函数,这个事件处理函数有两个参数,第一个参数是索引,第二个参数时索引对应的 DOM 对象,使用的时候注意转成 jQuery 对象。
语法:
// 参数1:元素集合索引
// 参数2:索引对应的DOM元素
元素集合.each(function (index, ele) {
// ...
})
示例:
$("#uu>li").each(function (index, ele) {
$(ele).css("opacity", (index + 1) / 10);
})
二、多库共存
由来:
当引入多个 js 库,而这些 js 库中有的方法具有相同的名称,那么在调用这个方法的时候就会出现冲突。
解决办法:
权限转让:var 新方法名 = 旧方法名.noConflict();
之后,所有使用旧方法名的地方都可以用新方法名代替。
三、包装集
我们获取的 jQuery 对象其实都是 DOM 对象的集合,从 jQuery 对象转换成 DOM 集合的方法也可以看出。jQuery 对象转换 DOM 对象的方式:jQuery对象[0],这就说明jQuery 对象其实都是DOM对象的集合。
既然 jQuery 对象是一个集合,那么就有 length 属性。这个 length 属性作用重大,它可以帮助我们在创建元素的只创建一个。
示例:点击按钮,在div中只添加一个p标签。
$("#btn").click(function (param) {
if ($("#pp").length == 0) {
$("#dv").append($("<p id='pp'>标签p</p>"));
}
});
四、几个元素的宽高属性
元素.innerWidth()/innerHeight() // 方法返回元素的宽度/高度(包含padding,不含边框)
元素.outerWidth()/outerHeight() // 方法返回元素的宽度/高度(包含padding,含边框)
元素.outerWidth(true)/outerHeight(true) // 方法返回元素的宽度/高度(包含padding,含边框,含外边距)
五、插件
1、什么是插件?
插件其实就是一个功能的实现。包括所用到的 css ,jQuery 等的所有代码的封装集合。我们在使用插件的时候只需要引入其对应的 css ,jQuery 文件以及html代码,经过少许的修改就可以得到相似的效果,大大节省了开发的时间,避免了重复造轮子。
插件下载下来一般包括下面几个部分:
css 文件夹:包括 css 文件
js 文件夹:jQuery 官方 js 文件, 插件的 js文件
index.html :演示文件(我们可以直接在上面改成自己需要的文件,或者copy里面的代码到自己的文件中)
2、插件的制作和使用
jQuery插件制作方式主要有三种:
1、通过$.extend()来扩展jQuery;
2、通过$.fn 向jQuery添加新的方法;
3、通过$.widget()应用jQuery UI的部件工厂方式创建。
参考链接(教你开发 jQuery插件):https://www.cnblogs.com/ajianbeyourself/p/5815689.html
jQuery 插件的使用:
1、导入下载下来的 css 文件
2、导入 jQuery 官方库
3、导入插件的 jQuery 库文件
4、复制 index.html 相关代码到自己的文件中。

从零开始学 Web 之 jQuery(八)each,多库共存,包装集,插件的更多相关文章
- 从零开始学 Web 之 jQuery(一)jQuery的概念,页面加载事件
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 jQuery(二)获取和操作元素的属性
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 jQuery(三)元素操作,链式编程,动画方法
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 jQuery(五)操作元素其他属性,为元素绑定事件
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 jQuery(七)事件冒泡,事件参数对象,链式编程原理
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 jQuery(四)元素的创建添加与删除,自定义属性
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 jQuery(六)为元素绑定多个相同事件,解绑事件
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 系列教程
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新…… github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:http:/ ...
- 从零开始学 Web 之 Ajax(六)jQuery中的Ajax
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
随机推荐
- [leetcode]49. Group Anagrams变位词归类
Given an array of strings, group anagrams together. Example: Input: ["eat", "tea" ...
- React-router4 第六篇 No Match 404
https://reacttraining.com/react-router/web/example/no-match react-router-dom 又一个新属性 Switch 在Switch 的 ...
- SpringMVC Http请求工具代码类
在SpringMVC的源代码中也提供了一个封装过的ThreadLocal,其中保存了每次请求的HttpServletRequest对象,(详细请看org.springframework.web.con ...
- wince 6.0 汉字乱码
CStdioFile file; file.Open(…); file.WriteString(_T("abc你好"));//只能写入abc 解决办法: 使用setlocale语句 ...
- mysql空值排序
SELECT * FROM lzh_topic_channel_product ORDER BY order_id is null , order_id 其中的ORDER BY order_id i ...
- spring与junit整合测试
1.导包4+2+aop+test 2.配置注解 3.测试
- Java WEB开发环境搭建以及创建Maven Web项目
根据此链接博文学习配置: http://www.cnblogs.com/zyw-205520/p/4767633.html 1.JDK的安装 自行百度,(最好是jdk1.7版本的) 测试如下图,即完成 ...
- 1-学习tecplot360
FETRIANGLE(3节点三角形), FEQUADRILATERAL(4节点四边形),FETETRAHEDRON(4节点四面体), FEBRICK(8节点六面体) 参考:https://wenku. ...
- 设计一个BCD码计数器。
BCD码计数器的定义: 对于机器语言,机器与人不同,为了让人更好的了解机器语言的数据输出,选用4位二进制数据表示十进制里的每位数据,这便是BCD码. 以下便是BCD码与十进制对应的码表 0------ ...
- MyBatis 源码分析 - 映射文件解析过程
1.简介 在上一篇文章中,我详细分析了 MyBatis 配置文件的解析过程.由于上一篇文章的篇幅比较大,加之映射文件解析过程也比较复杂的原因.所以我将映射文件解析过程的分析内容从上一篇文章中抽取出来, ...