keycode 8 = BackSpace BackSpace keycode 9 = Tab Tab keycode 12 = Clear keycode 13 = Enter keycode 16 = Shift_L keycode 17 = Control_L keycode 18 = Alt_L keycode 19 = Pause keycode 20 = Caps_Lock keycode 27 = Escape Escape keycode 32 = space space keycode 33 = Prior keycode 34 = Next keycode 35 = End keycode 36 = Home keycode 37 = Left keycode 38 = Up keycode 39 = Right keycode 40 = Down keycode 41 = Select keycode 42 = Print keycode 43 = Execute keycode 45 = Insert keycode 46 = Delete keycode 47 = Help keycode 48 = 0 equal braceright keycode 49 = 1 exclam onesuperior keycode 50 = 2 quotedbl twosuperior keycode 51 = 3 section threesuperior keycode 52 = 4 dollar keycode 53 = 5 percent keycode 54 = 6 ampersand keycode 55 = 7 slash braceleft keycode 56 = 8 parenleft bracketleft keycode 57 = 9 parenright bracketright keycode 65 = a A keycode 66 = b B keycode 67 = c C keycode 68 = d D keycode 69 = e E EuroSign keycode 70 = f F keycode 71 = g G keycode 72 = h H keycode 73 = i I keycode 74 = j J keycode 75 = k K keycode 76 = l L keycode 77 = m M mu keycode 78 = n N keycode 79 = o O keycode 80 = p P keycode 81 = q Q at keycode 82 = r R keycode 83 = s S keycode 84 = t T keycode 85 = u U keycode 86 = v V keycode 87 = w W keycode 88 = x X keycode 89 = y Y keycode 90 = z Z keycode 96 = KP_0 KP_0 keycode 97 = KP_1 KP_1 keycode 98 = KP_2 KP_2 keycode 99 = KP_3 KP_3 keycode 100 = KP_4 KP_4 keycode 101 = KP_5 KP_5 keycode 102 = KP_6 KP_6 keycode 103 = KP_7 KP_7 keycode 104 = KP_8 KP_8 keycode 105 = KP_9 KP_9 keycode 106 = KP_Multiply KP_Multiply keycode 107 = KP_Add KP_Add keycode 108 = KP_Separator KP_Separator keycode 109 = KP_Subtract KP_Subtract keycode 110 = KP_Decimal KP_Decimal keycode 111 = KP_Divide KP_Divide keycode 112 = F1 keycode 113 = F2 keycode 114 = F3 keycode 115 = F4 keycode 116 = F5 keycode 117 = F6 keycode 118 = F7 keycode 119 = F8 keycode 120 = F9 keycode 121 = F10 keycode 122 = F11 keycode 123 = F12 keycode 124 = F13 keycode 125 = F14 keycode 126 = F15 keycode 127 = F16 keycode 128 = F17 keycode 129 = F18 keycode 130 = F19 keycode 131 = F20 keycode 132 = F21 keycode 133 = F22 keycode 134 = F23 keycode 135 = F24 keycode 136 = Num_Lock keycode 137 = Scroll_Lock keycode 187 = acute grave keycode 188 = comma semicolon keycode 189 = minus underscore keycode 190 = period colon keycode 192 = numbersign apostrophe keycode 210 = plusminus hyphen macron keycode 211 = keycode 212 = copyright registered keycode 213 = guillemotleft guillemotright keycode 214 = masculine ordfeminine keycode 215 = ae AE keycode 216 = cent yen keycode 217 = questiondown exclamdown keycode 218 = onequarter onehalf threequarters keycode 220 = less greater bar keycode 221 = plus asterisk asciitilde keycode 227 = multiply division keycode 228 = acircumflex Acircumflex keycode 229 = ecircumflex Ecircumflex keycode 230 = icircumflex Icircumflex keycode 231 = ocircumflex Ocircumflex keycode 232 = ucircumflex Ucircumflex keycode 233 = ntilde Ntilde keycode 234 = yacute Yacute keycode 235 = oslash Ooblique keycode 236 = aring Aring keycode 237 = ccedilla Ccedilla keycode 238 = thorn THORN keycode 239 = eth ETH keycode 240 = diaeresis cedilla currency keycode 241 = agrave Agrave atilde Atilde keycode 242 = egrave Egrave keycode 243 = igrave Igrave keycode 244 = ograve Ograve otilde Otilde keycode 245 = ugrave Ugrave keycode 246 = adiaeresis Adiaeresis keycode 247 = ediaeresis Ediaeresis keycode 248 = idiaeresis Idiaeresis keycode 249 = odiaeresis Odiaeresis keycode 250 = udiaeresis Udiaeresis keycode 251 = ssharp question backslash keycode 252 = asciicircum degree keycode 253 = 3 sterling keycode 254 = Mode_switch ------------------------------------------------------------------------------------------------------ -----JavaScript技巧:让网页自动穿上外套 进行网页设计时,许多网页都需要相同的边框图案和导航条,FrontPage给我们提供了共享边框方便设计,但是,这样也不太方便,毕竟每个网页都添加了相同的内容,无形中网页增大了,当然,对于动态网页,这不是问题,但是,如果是静态的呢? 进行网页设计时,许多网页都需要相同的边框图案和导航条,FrontPage给我们提供了共享边框方便设计,但是,这样也不太方便,毕竟每个网页都添加了相同的内容,无形中网页增大了,当然,对于动态网页,这不是问题,但是,如果是静态的呢? 怎样可以克服这个缺点,通过框架可以实现这些的,只是,框架又引来了另一个麻烦,就是如果直接打开框架内部网页,脱去了华丽的外套,是不是显得很单调,这里我们找一种好的方法,让脱去外套的网页自动穿上外套,你想到了吗?如果你对这个议题不感兴趣,你可以走开了,下面我们详细讨论。 在框架网页中,通常使用src参数指定框架内的网页地址,我们要做的就是,当直接打开这个地址时,让它自动监测然后再穿上外套,当然,首先要在网页内添加检测代码,如下: 以下是引用片段: <script> if(top.location==self.location) { top.location="index.htm?"+self.location; } </script> 就这么简单,注意,index.htm是外套网页地址,接下来要做的就是,怎样让外套网页自动添加这部分内容,我们要在外套网页中解析网页地址,找到参数,然后将框架src参数指向该参数就行了,代码如下: 以下是引用片段: <script> document.write('<iframe id="mid" name="mid" width="100%" height="100%" frameborder="0" scrolling="auto"') var n=self.location.href.indexOf("?")//查看是否包含参数 if(n>0)//存在参数 { //指向参数 ------------------------------------------------------------------------------------------------------------- -----------Java Script正则表达式入门 说几句闲话: 我是一个菜鸟级程序员,属于苯鸟类。长时间来一直在门外打转,却入不得门去。灰心、郁闷。这篇文章也基本是从帮助文档上抄下来的。不对的地方还请高手多多指教,欢迎多多批评。好了,闲话少说。开始。。。 一、正则表达式是什么?为什么要用正则表达式? 你在开发html表单时是否经常为验证某个用户填入的字段是否符合某种格式而写过一段一段的程序: 又长又臭。比如:验证用户输入的值是否为一个合格的e-mail地址、是否为一个合适的日期等等。如果你掌握了正则表达式,你将无尽的感叹他的简洁与准确。为了证明我的说法,顺便在csnd上摘了两段程序,孰优孰劣你自己判断吧: 未使用正则表达式: //函数名:chksafe //功能介绍:检查是否含有,/,/ //参数说明:要检查的字符串 //返回值:0:是 1:不是 function chksafe(a) { fibdn = new array ( ,/, 、, ,, ;, /); i=fibdn.length; j=a.length; for (ii=0;ii { for (jj=0;jj { temp1=a.charat(jj); temp2=fibdn[ii]; if (tem;p1==temp2) { return 0; } } } return 1; } 使用正则表达式: /* ==================================================================== checksafe():检测域值是否包含特殊字符,如:,/,,,<,>;包含返回false,否则返回true。 ==================================================================== */ function issafe(str){ var reg = /^.*[||/|<|>].*$/; return !reg.test(str); } ========================================================================= 以上程序顺手摘来,希望原作者不要怪罪。 ========================================================================= 知道正则表达式的利害了吧!其实这才是正则表达式的简单的一项应用而已。更厉害的还多着呢。 那么,现在我来告诉你,正则表达式都是可以用来干什么: 1)数据格式的有效性验证:你可是已经 见识过了。 2)文本替换:文本编辑器你应该见识多了,哪个里面没有搜索和替换功能呢?如果你用过这些,那末,你已经是正则表达式的受益者了。 3)提取字符串:没有他,据说搜索引擎都不工作。呵呵。 在看看微软帮助文档上举的例子吧: 例如,如果需要搜索整个 web 站点来删除某些过时的材料并替换某些html 格式化标记,则可以使用正则表达式对每个文件进行测试,看在该文件中是否存在所要查找的材料或 html 格式化标记。用这个方法,就可以将受影响的文件范围缩小到包含要删除或更改的材料的那些文件。然后可以使用正则表达式来删除过时的材料,最后,可以再次使用正则表达式来查找并替换那些需要替换的标记。 现在知道什么是正则表达式了吧。如果你还不知道,那么我终于找到一个比我更笨的了! 不过,最后我还得再告诉你几点,让你的mind更上一层楼: 1)正则表达式是一种进行高效、准确、简洁的进行文本字符串处理(模式验证、搜索替换等)的方法学。 2)各种主流的程序设计语言都提供了对正则表达式的支持。当然,每种语言的实现程度和实现方式都不尽相同,但基本思想是相同的。所以,只要你在一种语言中有过正则表达式的使用经验,在其他语言上应该一看就明白。(还不赶快看一下你手头的语言是怎么支持正则表达式的)。 3)应用正则表达式时,一定要加注释。如果不加,会有人在背后骂你的,虽然你听不见。 4)如果你看完之后,还用那种笨重的方式进行字符串处理的话,你应该比我还笨一点点。哈哈。 二、在java script中初步尝试正则表达式: 学习正则表达式最好从模式验证开始,因为这些东西比较直观,易懂。举个最简单的例子,我们要验证一个字符串是否为一个邮政编码,如何来验证呢,先看程序: /* *============================================ *ispostcode():判断是否为邮政编码(中国6位数字) *============================================ */ function ispostcode(str){ var reg = /^d{6}$/;//什么玩艺,乱七八糟的,两边单引号、双引号都没有! if(reg.test(str)){ return true; }else{ return false; }//end if //写简单些:return reg.test(str);if语句真罗嗦。 }//end function 看到那行乱七八糟的东西了吗?这就是精华。哈哈。他就是用来验证一个字符串是否是一个邮政编码的&#8220;模式&#8221;。 其中: /.../:代表一个模式的开始和结束。 ^:用来匹配输入字符串的开始。(定位符) $:用来匹配输入字符串的结束。(定位符) :是个转义字符,d就代表匹配一个数字。(不会不知道转义吧?) {n}:代表前边子模式匹配的次数。(限定符) 现在明白了吧:一个字符串,从开头到结束必须是6个数字字符。(什么乱七八糟的,哈哈)。 而 reg就是你定义的一个正则表达式对象。(知道对象吧?) test()就是reg的一个方法了,他测试给定的字符串是否和正则表达式reg中的模式是否匹配(即:给定的字符串是否符合reg中的模式)。如果符合返回true,否则返回false。 如果你还是不明白,那我再给你解释最后一遍: /* *============================================ *isgoodmm():判断是不是一个好mm *============================================ */ function isgoodmm(mm){ var you = /^你欣赏mm的标准:身高、pp等等$/; if(you.test(mm)){//看看是不是一个好mm return true;//yes,thats good! }else{ return false;//什么玩艺,哈哈。 }//end if //祝你好运! }//end function 如果以上的你都明白了,那么你已经入门了。明天我将和你一起深入学习java script 中使用正则表达式的语法知识 document.write(" src="+self.location.href.substr(n+1)) } document.write('></iframe>') </script>
asii
最新推荐文章于 2022-06-11 10:08:33 发布