学了js,用过jquery,然后想着让自己在js这一块有更深的提高,就想尝试着封装自己的js库,偶尔就添加自己想到的功能。有参考过其他大牛封装库的方法,不懂的地方也有借鉴过,但代码还是自己想,自己理解,自己实际敲打的,也会不断完善,修改自己的js库啦。

// JavaScript Document
/*
author:mimeay/Chen Xiaochi
email:mimeay@163.com
qq:200909050
date:2013/11/9
*/
(function()
{
window.xc={};
window.xc={
get_id:function(id){
return document.getElementById(id);
},
get_name:function(name){
return document.getElementsByName(name);
},
get_ele:function(ele){
return document.getElementsByTagName(ele);
},
//获取节点attr值
get_attr:function(obj,attr){
obj.getAttribute(attr);
return obj;
},
//设置节点attr值
set_attr:function(obj,attr){
for(key in attr)
{
if(key=='className'){
obj.setAttribute(key.slice(0,5),attr[key]);
}else{
obj.setAttribute(key,attr[key]);
}
}
return obj;
},
//清除字符串空格
trim:function(str){
var strtrim=str.replace(/\s+/g,"");
return strtrim;
},
//验证email
email:function(email){
var checkemail=email.match(/[A-z]{1}\w{1,5}@([a-z]{2,}|\d{1,})[.]com/);
if(checkemail){return 1;}else{return -1;}
},
//设置表格隔行显示不同颜色
setTableColor:function(id,cobj){
var obj=this.get_id(id);
var trobj=obj.getElementsByTagName("tr");
var len=trobj.length;
var i;
for(i=0;i<len;i++)
{
if(i%2==0){
trobj.item(i).style.backgroundColor=cobj.even;
}else{
trobj.item(i).style.backgroundColor=cobj.ood;
}
}
return trobj;
},
//动态加载js
loadjs:function(url){
var state=true;
var js=this.get_ele("script");
var jlen=js.length;
var i;
for(i=0;i<jlen;i++)
{
if(js.item(i).getAttribute("src")==url)
{
state=false;
}
}
if(state){
var script=document.createElement("script");
script.type="type/javascript";
script.src=url;
var head=document.getElementsByTagName("head").item(0);
head.appendChild(script);
}
},
//网页url截取
s_url:function(url){
urlmain=url.split("?");
if(urlmain[1]){
urlarr=urlmain[1].split("&");
var arr=new Array();
for(var key in urlarr)
{
var urlkw=urlarr[key].split("=");
if(urlkw[0]&&urlkw[1])
{
arr.push(urlkw[1]);
}
}
}
return arr;
}
};
})();
  

尝试封装自己的js库的更多相关文章

  1. 封装自己的JS库

    一.基础知识 1.点击计数 第一种: var aBtn=document.getElementsByTagName('input'); var i=0; for(i=0;i<aBtn.lengt ...

  2. 仿照jquery封装一个自己的js库

    所谓造轮子的好处就是复习知识点,加深对原版jquery的理解.本文系笔者学习jquery的笔记,记述一个名为"dQuery"的初级版和缩水版jquery库的实现.主要涉及知识点包括 ...

  3. 仿照jquery封装一个自己的js库(二)

    本篇为完结篇.主要讲述如何造出轮子的高级特性. 一. css方法的高级操作 先看本文第一部分所讲的dQuery css方法 //css方法 dQuery.prototype.css=function( ...

  4. 仿照jquery封装一个自己的js库(一)

    所谓造轮子的好处就是复习知识点,加深对原版jquery的理解. 本文系笔者学习jquery的笔记,记述一个名为"dQuery"的初级版和缩水版jquery库的实现.主要涉及知识点包 ...

  5. 封装常用的js(Base.js)——【01】理解库,获取节点,连缀,

    封装常用的js(Base.js)——[01]理解库,获取节点,连缀,  youjobit07 2014-10-10 15:32:59 前言:       现如今有太多优秀的开源javascript库, ...

  6. JsQuick--个人封装的Js库

    JsQuick 该库为本人封装的Js库,尚未进行浏览器兼容 /** * 快速框架 版本:1.0.0 * 日期:2015.02.26 * 作者:简楚恩 */ /** * 快速获取控件类 */ var $ ...

  7. 在Vue将第三方JS库封装为组件使用

    第三方JS库地址:https://github.com/inorganik/CountUp.js 使用NPM进行安装: npm install --save countup 根据官方回答,CountU ...

  8. ABP+AdminLTE+Bootstrap Table权限管理系统第七节--登录逻辑及abp封装的Javascript函数库

    经过前几节,我们已经解决数据库,模型,DTO,控制器和注入等问题.那么再来看一下登录逻辑.这里算是前面几节的一个初次试水. 首先我们数据库已经有的相应的数据. 模型和DTO已经建好,所以我们直接在服务 ...

  9. ABP+AdminLTE+Bootstrap Table权限管理系统第七节--登录逻辑及几种abp封装的Javascript函数库

    返回总目录:ABP+AdminLTE+Bootstrap Table权限管理系统一期         简介 经过前几节,我们已经解决数据库,模型,DTO,控制器和注入等问题.那么再来看一下登录逻辑.这 ...

随机推荐

  1. Tree HDOJ--2682

    Tree Time Limit: 6000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  2. HDU-1253 胜利大逃亡 (BFS)

    此题可以做为三维深搜模板题.. 胜利大逃亡 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Ot ...

  3. 全新ASP框架——IISNODE介绍

    Asp是一门经典的动态网页编程语言,通常使用vbscript或者Jscript脚本来实现.一个好的框架,可以帮助您更加快速地使用Asp来完成您的网站开发任务.而Asp框架的终结者——IISNODE框架 ...

  4. Interviews3D: APlatform for Interactive Handing of Massive Data Sets 读后感

    横向比较: Inadequacy of current system design( 现代系统和一些软件的不足) 软件特点: Output sensitivity Out-of core data h ...

  5. params数据来源和参数传递的一点小理解

    今天是星期一,上次说的两个需求,解决了一个.在原来的页面增加了一个可以勾选的单选框用于完成,勾选对应的条件来渲染对应的页面,使用了简单的单选框radio_button来实现单选的提交,使用条件判断语句 ...

  6. Bzoj 2662: [BeiJing wc2012]冻结 dijkstra,堆,分层图,最短路

    2662: [BeiJing wc2012]冻结 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 647  Solved: 348[Submit][Sta ...

  7. Bzoj 1624: [Usaco2008 Open] Clear And Present Danger 寻宝之路 最短路,floyd

    1624: [Usaco2008 Open] Clear And Present Danger 寻宝之路 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 5 ...

  8. hdoj 5137 How Many Maos Does the Guanxi Worth【最短路枚举+删边】

    How Many Maos Does the Guanxi Worth Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 512000/5 ...

  9. 在网上浏览.NET的所有代码,并且让你的Visual Studio的go to definition(F12)指向在线代码

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:在网上浏览.NET的所有代码,并且让你的Visual Studio的go to definition(F ...

  10. IOS开发之——使用Segue在StoryBoard之间切换

    使用Segue能够在ViewController之间来回切换,以下就来说下切换方法: 1. 使用点击button进行切换 直接上图,在须要切换的View属性界面,点击Modal然后拉到前一个view界 ...