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库的更多相关文章

  1. 第一百二十六节,JavaScript,XPath操作xml节点

    第一百二十六节,JavaScript,XPath操作xml节点 学习要点: 1.IE中的XPath 2.W3C中的XPath 3.XPath跨浏览器兼容 XPath是一种节点查找手段,对比之前使用标准 ...

  2. 第三百二十九节,web爬虫讲解2—urllib库爬虫—ip代理—用户代理和ip代理结合应用

    第三百二十九节,web爬虫讲解2—urllib库爬虫—ip代理 使用IP代理 ProxyHandler()格式化IP,第一个参数,请求目标可能是http或者https,对应设置build_opener ...

  3. 第一百三十九节,JavaScript,封装库--CSS选择器

    JavaScript,封装库--修改元素选择器 就是将构造库函数修改成元素选择器,像css那样,输入#xxx .xxx xxx  (获取指定id下的指定class下的指定标签元素) 修改后的基础库 / ...

  4. 第一百二十五节,JavaScript,XML

    JavaScript,XML 学习要点: 1.IE中的XML 2.DOM2中的XML 3.跨浏览器处理XML 随着互联网的发展,Web应用程序的丰富,开发人员越来越希望能够使用客户端来操作XML技术. ...

  5. 第一百五十九节,封装库--JavaScript,表单序列化结合ajax提交数据

    封装库--JavaScript,表单序列化结合ajax提交数据 封装库,表单序列化方法 /** xu_lie_biao_dan()方法,表单序列化方法,将自动获取指定表单里面的各项字段name值和va ...

  6. 第一百二十四节,JavaScriptCookie与存储

    JavaScriptCookie与存储 学习要点: 1.cookie 2.cookie局限性 3.其他存储 随着Web越来越复杂,开发者急切的需要能够本地化存储的脚本功能.这个时候,第一个出现的方案: ...

  7. 第二百二十九节,jQuery EasyUI,后台管理界面---后台登录

    jQuery EasyUI,后台管理界面---后台登录 登录原理图 一,login.php,登录界面 <!DOCTYPE html> <html> <head> & ...

  8. 第一百六十九节,jQuery,基础事件

    jQuery,基础事件 学习要点: 1.绑定事件 2.简写事件 3.复合事件 JavaScript 有一个非常重要的功能,就是事件驱动.当页面完全加载后,用户通过鼠标 或键盘触发页面中绑定事件的元素即 ...

  9. 第一百八十九节,jQueryUI,折叠菜单 UI

    jQueryUI,折叠菜单 UI 学习要点: 1.使用 accordion 2.修改 accordion 样式 3.accordion()方法的属性 4.accordion()方法的事件 5.acco ...

随机推荐

  1. 值为NULL的对象指针

    相信大家对NULL不会很陌生,NULL 是一个标准规定的宏定义,用来表示空指针常量,当一个指针变量被赋值为NULL时,表示它不再指向任何有效地址,无法在访问任何数据.在VS2012库文件stdio.h ...

  2. JS中的prototype(转载)

    在研究别人写的js图像处理算法时,发现其中脚本中大量使用prototype,很难读明白,就网上查了下资料发现这篇文章很易懂,就转载如下: 1 原型法设计模式 在.Net中可以使用clone()来实现原 ...

  3. jquery表格datagrid单元格显示图片及分页使用

    要想达到自定义显示表格框的目的比如显示图片,超链接,按钮的形式,只需要给列添加formatter属性即可,比如显示图片: columns: [[                             ...

  4. [Usaco2008 Mar]River Crossing渡河问题[简单DP]

    Description Farmer John以及他的N(1 <= N <= 2,500)头奶牛打算过一条河,但他们所有的渡河工具,仅仅是一个木筏. 由于奶牛不会划船,在整个渡河过程中,F ...

  5. linq to NHibernate

      什么是linq to NHibernate 什么是linq to NHibernate?说简单一点就是linq + NHibernate. linq语句是.Net 3.5中新增的功能,从问世以来就 ...

  6. Restful?

    为什么要Restful?为什么不Restful?   本随笔不说为什么要Restful,只说为什么不Restful.首先Http是超文本转移协议而不是控制协议.通常文档中也会使用“资源”来指代超文本. ...

  7. 使用Fiddler伪造服务端返回数据,绕过软件试用期验证

    用过一款和visual studio集成非常好的移动端模拟器,有7天的试用期,可惜不支持国内支付,试用到期了怎么办,不想重装系统. 昨天看有人破解admin page,于是尝试自己动手试试,因为这款模 ...

  8. [转]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 ...

  9. [转]编译 JavaScriptCore For iOS

    from: http://phoboslab.org/log/2011/06/javascriptcore-project-files-for-ios github: https://github.c ...

  10. Hibernate:如何映射聚合?

    Hibernate:如何映射聚合? 目录 背景映射聚合聚合模型映射配置测试备注 背景返回目录 DDD 是在 Hibernate 之后发现的概念,Hibernate 如何映射 DDD 中的聚合呢?本文给 ...