网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 手机学院 | 邮件系统 | 网络安全 | 认证考试
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网页制作 > 心得技巧
网页制作:Dreamweaver教程,FrontPages教程,Javascript教程,HTML教程,CSS教程,心得技巧,DHTML教程,网页特效,Discuz!论坛
本月文章推荐
.网站策划:网站栏目和页面的策划.
.让弹出窗口变得“体贴”一些.
.每个网站都必须具备的几个重要文.
.制作网页需要学习哪些技术?.
.网页优化必须做的26件事情.
.教你制作GBK与Unicode的对照表.
.网页制作中经常用到的六则代码技.
.震撼 Google所见即所得页面编辑器.
.巧用SnagIt复制加密网页文字.
.网页制作过程中应注意代码注释书.
.DIV与Table布局在大型网站的可用.
.改进网站设计提供的有意的建议.
.如何像表格table一样对层div进行.
.一组很不错的网页色彩表.
.解燃眉之急 Windows常用密码破解.
.Google的网站收录和排名.
.动态加载外部css或js文件.
.做WEB2.0网站可以参考的十九条规.
.如何制作出非常美观的网页.
.滚动字幕的制作 marquee .

IE/Firefox中全局正则表达式的兼容

发表日期:2008-9-10

    有这样一段代码:if (RegExp.test(num))的结果,在IE中每次都为TRUE,而在Fire fox中若第一次为True,第二次必为False,后面交替出现。大概看了一下过往的解决办法:

    方法一:把if (RegExp.test(num))改为if (num.match(RegExp))
    方法二:使用RegExp对象处理,也就是 new RegExp("^(\-)?[0-9]*$")

    也不知道都验证过没有,反正我试过都达不到兼容效果,其实最根本的问题不是采取哪种正则对象,而是表达式中的"g"导致在Firefox中的效果和IE不一致,Firefox将该RegExp当成全局变量来处理了,所以最简单有效的办法就是将 var RegExp=/^(\-)?[0-9]*$/g 改为var RegExp=/^(\-)?[0-9]*$/ ,好的解决办法不在乎复杂,而是对症下药,这样的情况毕竟不常见。

function isNum(num){
    if(num.length==0){
        return false;
     }

    var RegExp=/^(\-)?[0-9]*$/g;
    if (RegExp.test(num)){
        return true;
     }else{
        return false;
     }
}

上一篇:网页排版中10种致命的语义错误 人气:1441
下一篇:解决网页上的FLASH挡住层的问题 人气:1218
浏览全部正则表达式的内容 Dreamweaver插件下载 网页广告代码 2009年新年快乐