Loveyuki's BLOG

标签:Javascript
Javascript 函数 getElementByClassName
Loveyuki | 技术新知 | 2008-03-06 10:51 | 399 点击 | 17 评论

自己写了一个通过 className 获取 HTML 元素的函数,由于使用了正则匹配,所以支持读取多个 className,比如 getElementByClassName('Image|Picture','IMG') 可以获取 className 为 Image 或 Picture 的 IMG 元素。

  1. function getElementByClassName(cls,elm) {  
  2.     var arrCls =[];  
  3.     var seeElm = !mtLibs.IsNull(elm) ? elm : '*';  
  4.     var rexCls = new RegExp('(^|\\\\s)' + cls + '(\\\\s|$)','i');  
  5.     var lisElm = document.getElementsByTagName(seeElm);  
  6.     for (var i=0; i<lisElm.length; i++ ) {  
  7.         var evaCls = lisElm[i].className;  
  8.         if(evaCls.length > 0 && (evaCls == cls || rexCls.test(evaCls))) {  
  9.             arrCls.push(lisElm[i]);  
  10.         }  
  11.     }  
  12.     return arrCls;  
检查密码强度的 Javascript
Loveyuki | 技术新知 | 2008-02-28 10:07 | 473 点击 | 15 评论

一个检查密码强度的 Javascript 函数,如果返回值大于 30 代表强度高,大于 20 代表强度中,算法方面比较简单。 就是检测是纯数字纯字母还是数字和字母混合。glade

这个函数是以前写极客地带的时候用的,Ajax 实现一个交互系统的确非常爽。呵呵

  1. function CheckPassword(val) {  
  2.     var sRe=[/[a-zA-Z]/g,/\d/g,/[^a-zA-Z0-9]/g];  
  3.     var sLe=[1,2,5];  
  4.     var sFa=[0,0,10,20];  
  5.     var iKn=0;  
  6.     var iSt=0  
  7.     for(var i=0;i<sRe.length;i++) {  
  8.         var cMa=val.match(sRe[i]);  
  9.         if(cMa!=null) {  
  10.             iSt+=cMa.length*sLe[i];  
  11.             iKn++;  
  12.         }  
  13.     }  
  14.     iSt+=sFa[iKn];  
  15.     return iSt;  
Javascript 动态加载 CSS STYLE 元素
Loveyuki | 技术新知 | 2008-01-31 15:21 | 1186 点击 | 9 评论

用 Javascript 动态加载一个 CSS 文件的方法很简单,但是如果想要加载一个 CSS STYLE 元素,里面写入一些 CSS 语句就没有那么简单了。不过也难不倒我们,查一查 MSDN 和 Mozilla 的开发网站就可以写出来了,下面的语句兼容了 IE,Firefox,Safari,Opera 没有测试。

  1. function AttachStyle(ownDoc,styCss) { 
  2.     var elmSty = ownDoc.createElement('STYLE'); 
  3.     elmSty.setAttribute("type""text/css"); 
  4.     if (elmSty.styleSheet) { 
  5.         elmSty.styleSheet.cssText=styCss;  
  6.     } else {  
  7.         elmSty.appendChild(ownDoc.createTextNode(styCss));  
  8.     } 
  9.     ownDoc.getElementsByTagName("head")[0].appendChild(elmSty); 
打开 Safari Windows 版本的 Javascript 调试功能
Loveyuki | 技术新知 | 2008-01-30 18:07 | 753 点击 | 7 评论

众所周知,Firefox 有一个 Error Console 可以很方便的调试 Javascript 的错误,特别加上一些强大的扩展,比如 Firebug,在 Firefox 下面写 Javascript 简直就是一种享受,最近写一个 Mini Editor 的时候,在Safari 下面一直不太正常,Safari 其实也有 DEBUG 功能的,只是默认没有开启而已,好了,我们的目标就是开启 Safari 的 DEBUG 功能,一共有两种方法:

  1. 打开 C:\Documents and Settings\Your Username\Application Data\Apple Computer\Safari\Preferences.plist 文件,他是个 XML 文件,我们只需要在最末尾的 </dict>
    </plist> 的前面增加下面的内容就可以了。
    1. <key>IncludeDebugMenu</key> 
    2. <true/> 
  2. 在 Safari.exe 后面增加一个参数 /enableDebugMenu 就可以了

至于 OS/X 系统那就更简单了,直接在命令行下运行 defaults write com.apple.Safari IncludeDebugMenu 1,就可以搞定了。