第一百二十九节,JavaScript,理解JavaScript库
JavaScript,理解JavaScript库
学习要点:
1.项目介绍
2.理解JavaScript库
3.创建基础库
从本章,我们来用之前的基础知识来写一个项目,用以巩固之前所学。那么,每个项目为了提高开发效率,我们需要创建一个库来存放大量的重复调用的代码。而在这里,我们需要理解一些知识。
一.项目介绍
在现在流行的网站中,大量使用前端的Web应用,估计就是博客系统了。博客系统目前主要分为两种,一种是博客,一种是微博(一句话博客)。
不管在博客和微博,都采用的大量的JavaScript特效,有图片广告、下拉菜单、表单验证、弹窗、轮播器等等一系列。那么我们就创建一个项目,把上面各种应用较多的效果编写出来。
二.理解JavaScript库
什么是JavaScript库?说白了,就是把各种常用的代码片段,组织起来放在一个js文件里,组成一个包,这个包就是JavaScript库。现如今有太多优秀的开源JavaScript库,比如:jQuery、Prototype、Dojo、Extjs等等。这些JavaScript库已经把最常用的代码进行了有效的封装,以方便我们开发,从而提高效率。
当然,这里我们就不去探讨这些开源JavaScript库,那样就太容易了一点。我们这里需要探讨的是自己创建一个JavaScript库,虽然自己创建的可能没有那些开源JavaScript库功能强大,但在提升自己JavaScript开发能力,有很大帮助。
三.创建基础库
我们可以创建一个库,这是一个基础库,名字就叫做base.js。我们准备在里面编写最常用的代码,然后不断的扩展封装。
在最常用的代码中,最最常用的,也许就是获取节点方法。这里我们可以编写如下代码:
封装库代码:
/**
*feng_zhuang_ku_1.0版本,js封装库,2016/12/29日:林贵秀
**/ /**
*定义封装库对象
**/
var feng_zhuang_ku = {
/**------------------------------------------------获取元素标签开始--------------------------------------------**/
/**
* huo_qu_id()方法,通过id获取元素标签,参数是id值,返回元素对象
**/
huo_qu_id: function (id) {
return document.getElementById(id);
},
/**
* huo_qu_name_zhi()方法,通过元素name值获取指定元素,参数是元素name值,返回元素相同name值对象集合,一般获取表单
**/
huo_qu_name_zhi: function (name) {
return document.getElementsByName(name);
},
/**
* huo_qu_name()方法,通过标签名称获取相同标签名的元素,参数是标签名称,返回对象集合
**/
huo_qu_name: function (tag) {
return document.getElementsByTagName(tag);
}
/**------------------------------------------------获取元素标签结束--------------------------------------------**/
};
前台调用代码
//前台调用代码
window.onload = function (){
alert(feng_zhuang_ku.huo_qu_id('li').innerHTML);
alert(feng_zhuang_ku.huo_qu_name_zhi('j')[0].innerHTML);
alert(feng_zhuang_ku.huo_qu_name('div')[2].innerHTML);
};
PS:本项目为了更好的兼容性,我们采用UTF-8,在Notepad++上设置默认为UTF-8即可。此项目不是为了做一个博客或者微博,而是将里面的各种效果拿出来模仿编写。
第一百二十九节,JavaScript,理解JavaScript库的更多相关文章
- 第一百二十六节,JavaScript,XPath操作xml节点
第一百二十六节,JavaScript,XPath操作xml节点 学习要点: 1.IE中的XPath 2.W3C中的XPath 3.XPath跨浏览器兼容 XPath是一种节点查找手段,对比之前使用标准 ...
- 第三百二十九节,web爬虫讲解2—urllib库爬虫—ip代理—用户代理和ip代理结合应用
第三百二十九节,web爬虫讲解2—urllib库爬虫—ip代理 使用IP代理 ProxyHandler()格式化IP,第一个参数,请求目标可能是http或者https,对应设置build_opener ...
- 第一百三十九节,JavaScript,封装库--CSS选择器
JavaScript,封装库--修改元素选择器 就是将构造库函数修改成元素选择器,像css那样,输入#xxx .xxx xxx (获取指定id下的指定class下的指定标签元素) 修改后的基础库 / ...
- 第一百二十五节,JavaScript,XML
JavaScript,XML 学习要点: 1.IE中的XML 2.DOM2中的XML 3.跨浏览器处理XML 随着互联网的发展,Web应用程序的丰富,开发人员越来越希望能够使用客户端来操作XML技术. ...
- 第一百五十九节,封装库--JavaScript,表单序列化结合ajax提交数据
封装库--JavaScript,表单序列化结合ajax提交数据 封装库,表单序列化方法 /** xu_lie_biao_dan()方法,表单序列化方法,将自动获取指定表单里面的各项字段name值和va ...
- 第一百二十四节,JavaScriptCookie与存储
JavaScriptCookie与存储 学习要点: 1.cookie 2.cookie局限性 3.其他存储 随着Web越来越复杂,开发者急切的需要能够本地化存储的脚本功能.这个时候,第一个出现的方案: ...
- 第二百二十九节,jQuery EasyUI,后台管理界面---后台登录
jQuery EasyUI,后台管理界面---后台登录 登录原理图 一,login.php,登录界面 <!DOCTYPE html> <html> <head> & ...
- 第一百六十九节,jQuery,基础事件
jQuery,基础事件 学习要点: 1.绑定事件 2.简写事件 3.复合事件 JavaScript 有一个非常重要的功能,就是事件驱动.当页面完全加载后,用户通过鼠标 或键盘触发页面中绑定事件的元素即 ...
- 第一百八十九节,jQueryUI,折叠菜单 UI
jQueryUI,折叠菜单 UI 学习要点: 1.使用 accordion 2.修改 accordion 样式 3.accordion()方法的属性 4.accordion()方法的事件 5.acco ...
随机推荐
- 值为NULL的对象指针
相信大家对NULL不会很陌生,NULL 是一个标准规定的宏定义,用来表示空指针常量,当一个指针变量被赋值为NULL时,表示它不再指向任何有效地址,无法在访问任何数据.在VS2012库文件stdio.h ...
- JS中的prototype(转载)
在研究别人写的js图像处理算法时,发现其中脚本中大量使用prototype,很难读明白,就网上查了下资料发现这篇文章很易懂,就转载如下: 1 原型法设计模式 在.Net中可以使用clone()来实现原 ...
- jquery表格datagrid单元格显示图片及分页使用
要想达到自定义显示表格框的目的比如显示图片,超链接,按钮的形式,只需要给列添加formatter属性即可,比如显示图片: columns: [[ ...
- [Usaco2008 Mar]River Crossing渡河问题[简单DP]
Description Farmer John以及他的N(1 <= N <= 2,500)头奶牛打算过一条河,但他们所有的渡河工具,仅仅是一个木筏. 由于奶牛不会划船,在整个渡河过程中,F ...
- linq to NHibernate
什么是linq to NHibernate 什么是linq to NHibernate?说简单一点就是linq + NHibernate. linq语句是.Net 3.5中新增的功能,从问世以来就 ...
- Restful?
为什么要Restful?为什么不Restful? 本随笔不说为什么要Restful,只说为什么不Restful.首先Http是超文本转移协议而不是控制协议.通常文档中也会使用“资源”来指代超文本. ...
- 使用Fiddler伪造服务端返回数据,绕过软件试用期验证
用过一款和visual studio集成非常好的移动端模拟器,有7天的试用期,可惜不支持国内支付,试用到期了怎么办,不想重装系统. 昨天看有人破解admin page,于是尝试自己动手试试,因为这款模 ...
- [转]Top 10 DTrace scripts for Mac OS X
org link: http://dtrace.org/blogs/brendan/2011/10/10/top-10-dtrace-scripts-for-mac-os-x/ Top 10 DTra ...
- [转]编译 JavaScriptCore For iOS
from: http://phoboslab.org/log/2011/06/javascriptcore-project-files-for-ios github: https://github.c ...
- Hibernate:如何映射聚合?
Hibernate:如何映射聚合? 目录 背景映射聚合聚合模型映射配置测试备注 背景返回目录 DDD 是在 Hibernate 之后发现的概念,Hibernate 如何映射 DDD 中的聚合呢?本文给 ...