风吟的小型JavaScirpt库(FY.JS).

网络编程 JavaScript javascript技巧 分类:[default] 更新日期: 2015-08-17
此库非常的迷你压缩之后只有1.54KB.但是却有类似jquery的语法有COOKIE操作还有DOM以及AJAX跟绑定事件函数.

小弟刚学javascript没几天不发出来给各位高手指教看看这个小库哪方面可以做的更好实在是不会进步,于是我发出来求喷来了。这个小玩意我开发的初衷就是给自己使用的不建议大家使用。你要是觉得风吟的代码写得不好请你耐心的照顾一下我这个小菜鸟务必跟我说明白哪里不好应该怎么改。我不是重造轮子我只是想提高自己的水平。希望不吝赐教。

比如此库什么地方还可以更精简的写法节省更多代码

比如此库哪里不兼容或者如何写法更完美。

 FY.JS已经在google code 上存放.

 项目地址:http://code.google.com/p/fyjs/ 

 文档地址:http://fyjs.googlecode.com/files/FY.JS.1.0.doc.zip  (文档地址,里面含有完整例子.)

 文件地址:http://fyjs.googlecode.com/files/FY.1.0.js  (压缩版1.54KB)

源代码经过格式化的...

代码如下:

/*
* FY Library 1.0
* Copyright(c) 2010 FengYin
* Blog: http://fengyin.name/
* Date: 2010-3-12 16:10:01
* Update: http://code.google.com/p/fyjs/
*/
(function(_w,_d) {
var _FY,$,FY;
_w._FY=_w.$= function(i) {
return new FY(i)
};
FY = function(i) {
this.id = _d.getElementById(i)
};
FY.prototype = {
ready: function(f) {
var l = _w.onload;
if (typeof(l) == "function") {
_w.onload = function() {
l();
f()
}
} else {
_w.onload = f
}
},
html: function(c) {
var g = this.id,
r = g.innerHTML;
if (c) {
g.innerHTML = "";
g.innerHTML += c;
return this
} else {
return r
}
},
val: function(c) {
var g = this.id,
r = g.value;
if (c) {
g.value = "";
g.value += c;
return this
} else {
return r
}
},
text: function(c) {
var g = this.id,
r = g.innerText,
f = g.textContent;
if (c) {
r ? g.innerText = "": g.textContent = "";
r ? g.innerText += c: g.textContent += c;
return this
} else {
return r ? r: f
}
},
show: function(f) {
this.id.style.display = "block";
f ? f() : null
},
hide: function(f) {
this.id.style.display = "none";
f ? f() : null
},
bind: function(t, f) {
var l = this.id,
e = l.attachEvent;
e ? l.attachEvent("on" + t,f):l.addEventListener(t,f,false)
},
setcookie: function(s) {
var p = new Date();
p.setTime(p.getTime() + (s.expires || 24) * 60 * 60 * 1000);
_d.cookie = s.name + "=" + escape(s.value) + ";expires=" + p.toGMTString() + ';path=/'
},
getcookie: function(n) {
var c = _d.cookie.match(new RegExp("(^| )" + n + "=([^;]*)(;|$)"));
return c ? unescape(c[2]) : null
},
ajax: function(s) {
var a = _w.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
with(a) {
open("POST", s.url, true);
setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
send(s.data);
onreadystatechange = function() {
if (readyState == 4 && status == 200) {
s.success(responseText)
}
}
}
}
}
})(window,document);


> 本站内容系网友提交或本网编辑转载,其目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请及时与本网联系,我们将在第一时间删除内容!

相关文章
  • 利用ASP.NETMVC+Bootstrap搭建个人博客之praise.js点赞特效插件(二)
    这篇文章主要介绍了利用ASP.NET和MVC+Bootstrap搭建个人博客之praise.js点赞特效插件二的相关资料,需要的朋友可以参考下在上篇文章给大家介绍了利用ASP.NET MVC和Bootstrap快速搭建响应式个人博客站(一).接下来给大家介绍如果做个点赞插件,一起通过本文学习吧! 1. 为啥要做这个点赞插件?    praise.js是一款小 ...
  • Linux上安装Python的PIL和Pillow库处理图片的实例教程
    这里我们来看一下在Linux上安装Python的PIL和Pillow库处理图片的实例教程,包括一个使用Pillow库实现批量转换图片的例子:安装正常情况,只需 pip install PIL==1.1.7 或者 pip install Pillow==2.9.0 即可.但需留意安装后的输出安装完成后,需留意输出: *** TKINTER support no ...
  • js选择器全面解析
    下面小编就为大家带来一篇js选择器全面解析.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧原生JS选择器有getElementById.getElementsByName.getElementsByTagName和getElementsByClassName这四个,下面我就一个一个介绍这四个选择器的用法. 1.getElemen ...
  • 正则表达式单行、多行模式简介(使用说明)
    正则表达式单行、多行模式简介(使用说明)
    我们今天继续讨论下,它的单行,多行模式使用,及容易出现错误地方.单行,多行模式,都是正则表达式的模式修饰符里面出现的参数继上几篇正则表达式相关说明(详情:正则表达式 ),我们今天继续讨论下,它的单行,多行模式使用,及容易出现错误地方.单行,多行模式,都是正则表达式的模式修饰符里面出现的参数.目前常用正则表达式都有该使用选项,如:javascript 正则表达 ...
  • 正则表达式性能优化方法高效正则表达式书写
    正则表达式性能优化方法高效正则表达式书写
    这里说的正则表达式优化,主要是针对目前常用的NFA模式正则表达式这里说的正则表达式优化,主要是针对目前常用的NFA模式正则表达式,详细可以参考:正则表达式匹配解析过程探讨分析(正则表达式匹配原理).从上面例子,我们可以推断出,影响NFA类正则表达式(常见语言:GNU Emacs,Java,ergp,less,more,.NET语言, PCRE library ...
  • JavaScript中的正则表达式(推荐)
    正则表达式通常用于在文本中查找匹配的字符串,js正则表达式在程序开发中应用非常广泛,本文给大家介绍JavaScript 中的正则表达式推荐,感兴趣的朋友一起学习吧正则表达式的大致匹配过程是:依次拿出表达式和文本中的字符比较,如果每一个字符都能匹配,则匹配成功:一旦有匹配不成功的字符则匹配失败. 正则表达式通常用于在文本中查找匹配的字符串.Python里数量词 ...
猜你喜欢