易截截图软件、单文件、免安装、纯绿色、仅160KB

javascript 缓存系统

模仿jQuery,设计了一个缓存系统。像jQuery.data这样的东西,Prototype与mootools也有,目的都是用来辅助事件系统,用来缓存其中生成的数据,而非缓存普通函数上次计算的结果。Prototype利用了它的Hash类,mootools没细看,它内部好像用来缓存uuid。一个共识是,为页面用到的元素设置uuid非常有用,要查找元素时,可以避免重复查找,也可以用于与事件回调函数相绑定。由于uuid目前只有IE支持,它叫做uniqueID,格式为ms__id\d+,后面的数字也有名堂,叫做uniqueNumber。jQuery那个算是uniqueNumber吧,而且它的缓存系统非常复杂,支持缓存单个数据(利用data这个读写方法)与一组数据(利用queue,删除用dequeue)。没办法,因为它是白手起家,没有像Prototype那样利用一个自定数据类型分担一下职责。是时候进入正题,说一下我的缓存系统了。它利用到我的超级数组对象,实现像queue与dequeue。但我的超级数组对象能做的事更多,像filter,forEach,map,reduce,one,toObject,contains,remove等一应俱全。
dom.eventTypes = dom.array(String("abort blur change click contextmenu \
dblclick error focus keydown keypress keyup load mousedown \
mouseenter mouseup mouseleave mousemove mouseover mouseout \
reset resize select submit unload").match(/\w+/g));
//******************************缓存系统***********************
dom.mixin({
uuid : 0,
storage: {},
buildCache:function(item){
var key,cache = dom.storage;
//如果是window
if ( item.setInterval && ( item !== window && !item.frameElement )) {
key = "dom-window"
}else if(item.nodeType){
if(!item.uuid){
item.uuid = "dom" + dom.uuid++
dom.cache("uuid","uuid-set",item);//保存元素的引用
}//如果当前元素没有uuid这属性,那么为它添加一个
key = item.uuid
}else if(dom.isString(item)){
key = item;
}else{
throw "item must be element node ,window or string"
}
if(!


相关文档:

Javascript 中 String.replace( ) 的妙用

<script language="javascript">
<!--
String.prototype.replaceAll = stringReplaceAll;
function stringReplaceAll(AFindText,ARepText){
raRegExp = new RegExp(AFindText,"g");
return this.replace(raRegExp,ARepText)
}
var content = "%sfasf%sfd%asdfsadf%1111%"
 // 把 所有的 % 替换为 #
......

javascript 显示隐藏表的一行

<a href='javascript:add();'>添加</a>
<a href='javascript:del();'>删除</a>
<table width=300 id=tbl>
<tr style='display:none;'><td>11111111111111</td></tr>
<tr style='display:none;'><td>22222222222222</td></tr>
<tr s ......

javascript 验证时间格式

1. 短时间,形如 (13:04:06)
function isTime(str)
{
var a = str.match(/^(\d{1,2})(:)?(\d{1,2})\2(\d{1,2})$/);
if (a == null) {alert('输入的参数不是时间格式'); return false;}
if (a[1]>24 || a[3]>60 || a[4]>60)
{
alert("时间格式不对");
return false
}
return true;
}
2. 短 ......

asp.net 在前台和后台调用 javascript 函数

1、直接在前台调用 javascript 函数
很简单,在 head 元素之间加入 script 元素,将 type 元素设置为 " text/javascript "
如:
<head runat="server">
<mce:script type="text/javascript" ><!--
function ShowName(str)
{
alert("您的名字为:("+str+")");
}
// --></mce:script>
< ......

javascript核心学习笔记

变量
1.       如果没有用var语句给一个变量定初始值,它的初始值就是undefined.
2.       尝试给未用var声明的变量赋值,JavaScript会隐式声明该变量。但是,隐式声明的变量总是被创建为全局变量,即使该变量只在一个函数体内使用。
3.    ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号