±¾ÎÄ×÷ÕßΪDavid
Mandelin£¬©¤©¤Mozilla JavaScriptÍŶӹ¤×÷ÈËÔ±¡£
Firefox 3.5ÓµÓÐÒ»¸öȫеÄJavaScriptÒýÇæ£¬½Ð×öTraceMonkey£¬ÔÚ¸ÃÒýÇæÉÏÅÜJSÓ¦ÓÃÒª±ÈFirefox
3¿ìµ½3-4±¶£¬´Ó¶øÎªÏÖÓеÄÍøÂçÓ¦ÓüÓËÙ¡£ÕâÆªÎÄÕ´óÖµÄÃèÊöÒ»ÏÂÔÚTraceMonkeyÖаüÀ¨µÄÖØÒª²¿¼þ£¬ÒÔ¼°ËûÃÇÊÇÈçºÎ¼ÓËÙJavaScriptµÄ¡£Í¬Ñù£¬ÔÚÁ˽âÕâЩ֮ºó
£¬ÄãÒ²¾ÍÄÜÖªµÀʲôÑùµÄÍøÂçÓ¦ÓÃͨ¹ýTraceMonkeyÄܹ»»ñµÃ×î´óµÄÌáËÙ£¬ÒÔ¼°ÔõôÑùÀ´Ð´ÄúµÄ³ÌÐò»ñµÃ¸ü´óµÄÐÔÄÜÌá¸ß¡£
ΪʲôÌáËÙJSºÜÄÑ£º¶¯Ì¬ÀàÐÍ
ÀàËÆÓÚJavaScriptºÍPythonÕâÑùµÄ¸ß¼¶¶¯Ì¬ÓïÑÔͨ³£Ê¹µÃ±à³ÌЧÂʷdz£¸ß£¬µ«ÊÇͬÀàËÆJava»òÕßCÕâÑùµÄ¾²Ì¬ÓïÑÔÏà±È£¬ËûÃÇÒªÂýһЩ¡£°´ÕÕ¾ÑéÀ´Ëµ£¬Ò»¸öJS³ÌÐòͨ³£Òª±ÈͬµÈµÄJava³ÌÐòÂý10±¶¡£
ÏñJSÕâÑùµÄ¶¯Ì¬ÓïÑÔ±ÈÏñJava»òÕßCÕâÑùµÄ¾²Ì¬ÓïÑÔÂýÖ÷ÒªÓÐÁ½¸öÔÒò¡£µÚÒ»¸öÔÒòÊÇÔÚ¶¯Ì¬ÓïÑÔÖУ¬Í¨³£²»Ì«ÈÝÒ×ÔÚÖ´ÐÐ֮ǰ֪µÀÖµµÄÀàÐÍÐÅÏ¢¡£Òò´Ë£¬ÓïÑÔ±¾Éí±ØÐëʹÓÃÒ»¸öͨÓõĸñʽ´æ´¢ËùÓеÄÖµ²¢ÇÒʹÓÃͨÓõIJÙ×÷À´´¦ÀíËûÃÇ¡£
Ïà·´£¬ÔÚJavaÖУ¬³ÌÐòÔ±ÉùÃ÷±äÁ¿ºÍ·½·¨µÄÀàÐÍ£¬±àÒëÆ÷¿ÉÒÔÔÚÔËÐÐ֮ǰ¾ÍÖªµÀÕâЩֵµÄÀàÐÍ¡£±àÒëÆ÷¿ÉÒÔʹÓÃÌØ¶¨µÄ¸ñʽºÍ²Ù×÷À´´¦ÀíÕâЩֵ£¬¶øÕâ¸ö¹ý³ÌÒª±ÈͨÓõĸñʽºÍ²Ù×÷¿ìºÜ¶à¡£ÏÂÃæ£¬ ......
ÔÚprototype¿ò¼ÜÖеÄÀà¼Ì³ÐʵÏÖ»úÖÆ
//ΪObjectÀàÌí¼Ó¾²Ì¬·½·¨£ºextend
Object.extend = function(destination, source) {
for(property in source) {
destination[property] = source[property];
}
return destination;
}
//ͨ¹ýObjectÀàΪÿ¸ö¶ÔÏóÌí¼Ó·½·¨extend
Object.prototype.extend = function(object) {
return Object.extend.apply(this, [this, object]);
}
Object.extend·½·¨ºÜÈÝÒ×Àí½â£¬ËüÊÇObjectÀàµÄÒ»¸ö¾²Ì¬·½·¨£¬ÓÃÓÚ½«²ÎÊýÖÐsourceµÄËùÓÐÊôÐÔ¶¼¸³Öµµ½destination¶ÔÏóÖУ¬²¢·µ»ØdestinationµÄÒýÓá£ÏÂÃæ½âÊÍÒ»ÏÂObject.prototype.extendµÄʵÏÖ£¬ÒòΪObjectÊÇËùÓжÔÏóµÄ»ùÀ࣬ËùÒÔÕâÀïÊÇΪËùÓеĶÔÏó¶¼Ìí¼ÓÒ»¸öextend·½·¨£¬º¯ÊýÌåÖеÄÓï¾äÈçÏ£º
Object.extend.apply(this,[this,object]);
ÕâÒ»¾äÊǽ«ObjectÀàµÄ¾²Ì¬·½·¨×÷Ϊ¶ÔÏóµÄ·½·¨ÔËÐУ¬µÚÒ»¸ö²ÎÊýthisÊÇÖ¸Ïò¶ÔÏóʵÀý×ÔÉí£»µÚ¶þ¸ö²ÎÊýÊÇÒ»¸öÊý×飬°üÀ¨Á½¸öÔªËØ£º¶ÔÏó±¾ÉíºÍ´«½øÀ´µÄ¶ÔÏó²ÎÊýobject¡£º¯Êý¹¦ÄÜÊǽ«²ÎÊý¶ÔÏóobjectµÄËùÓÐÊôÐԺͷ½·¨¸³Öµ¸øµ÷Óø÷½·¨µÄ¶ÔÏó×ÔÉí£¬²¢·µ»Ø×ÔÉíµÄÒýÓá£ÓÐÁËÕâ¸ö·½·¨£¬ÏÂÃæ¿´Àà¼Ì³Ðµ ......
//·þÎñÆ÷µ¯³ö¶Ô»°¿ò
if (lcSID == "1" && (txtNsp.Text.Trim() != lcNewspaper || Convert.ToDateTime(txtNspdate.Text.Trim()) != Convert.ToDateTime(lcNspdate)))
{
string lcJs = "var varname = window.confirm(\"Êý¾Ý²»Ò»Ö£¬ÏµÍ³¼Ç¼±¨Ö½ÊÇ " + ViewState["lcNewspaper"].ToString() + ",ʱ¼äÊÇ" + ViewState["lcNspdate"].ToString() +"\\n\\n\\nÊÇ·ñ±¨¸æ´íÎ󣿓ȷÈÏ”Ìá½»±¨¸æ²¢Í¨ÖªÖ÷¹Ü£¬“È¡Ïû”ÖØÐ¼Èë\"); if (varname==true) {window.location='y_pdfcode5.aspx?MID=" + lcMID + "';};";
lcJs = "<script>" + lcJs + "</script>";
ClientScript.RegisterStartupScript(this.GetType(), "clear", lcJs);
return;
}
//·þÎñ ......
RegExp¶ÔÏó£¨ÖÁ½ñΪֹÎÒ¿´µ½¹ýµÄ×îͨË×Ò×¶®ºÍÉîÈëµÄÕýÔò±í´ïʽ½Ì³Ì£©
JavaScriptÌṩÁËÒ»¸öRegExp¶ÔÏóÀ´Íê³ÉÓйØÕýÔò±í´ïʽµÄ²Ù×÷ºÍ¹¦ÄÜ£¬Ã¿Ò»ÌõÕýÔò±í´ïʽģʽ¶ÔÓ¦Ò»¸öRegExpʵÀý¡£ÓÐÁ½ÖÖ·½Ê½¿ÉÒÔ´´½¨RegExp¶ÔÏóµÄʵÀý¡£
ʹÓÃRegExpµÄÏÔʽ¹¹Ô캯Êý£¬Ó﷨Ϊ£ºnew RegExp("pattern"[,"flags"])¡£
ʹÓÃRegExpµÄÒþʽ¹¹Ô캯Êý£¬²ÉÓô¿Îı¾¸ñʽ£º/pattern/[flags]¡£
pattern²¿·ÖΪҪʹÓõÄÕýÔò±í´ïʽģʽÎı¾£¬ÊDZØÐëµÄ¡£ÔÚµÚÒ»ÖÖ·½Ê½ÖУ¬pattern²¿·ÖÒÔJavaScript×Ö·û´®µÄÐÎʽ´æÔÚ£¬ÐèҪʹÓÃË«ÒýºÅ»òµ¥ÒýºÅÀ¨ÆðÀ´£»ÔÚµÚ¶þÖÖ·½Ê½ÖУ¬pattern²¿·ÖǶÌ×ÔÚÁ½¸ö“/”Ö®¼ä£¬²»ÄÜʹÓÃÒýºÅ¡£
flags²¿·ÖÉèÖÃÕýÔò±í´ïʽµÄ±êÖ¾ÐÅÏ¢£¬ÊÇ¿ÉÑ¡Ïî¡£Èç¹ûÉèÖÃflags²¿·Ö£¬ÔÚµÚÒ»ÖÖ·½Ê½ÖУ¬ÒÔ×Ö·û´®µÄÐÎʽ´æÔÚ£»ÔÚµÚ¶þÖÖ·½Ê½ÖУ¬ÒÔÎı¾µÄÐÎʽ½ô½ÓÔÚ×îºóÒ»¸ö“/”×Ö·ûÖ®ºó¡£flags¿ÉÒÔÊÇÒÔϱêÖ¾×Ö·ûµÄ×éºÏ¡£
gÊÇÈ«¾Ö±êÖ¾¡£Èç¹ûÉèÖÃÁËÕâ¸ö±êÖ¾£¬¶Ôij¸öÎı¾Ö´ÐÐËÑË÷ºÍÌæ»»²Ù×÷ʱ£¬½«¶ÔÎı¾ÖÐËùÓÐÆ¥ÅäµÄ²¿·ÖÆð×÷Óá£Èç¹û²»ÉèÖÃÕâ¸ö±êÖ¾£¬Ôò½öËÑË÷ºÍÌæ»»×îÔçÆ¥ÅäµÄÄÚÈÝ¡£
& ......
ÎÒÃÇÓÐʱ»ñÈ¡ styl.widthΪ¿ÕµÄʱºò£¬¿ÉÒÔ»ñÈ¡cssÖеÄwidth..
µ«ie and ff ÊDz»Í¬µÄ¡£¡£
ie:
obj.currentStyle['width']
ff:
var css = document.defaultView.getComputedStyle(obj, null);
css.getPropertyValue('width') ......
1. oncontextmenu="window.event.returnValue=false" ½«³¹µ×ÆÁ±ÎÊó±êÓÒ¼ü
<table border oncontextmenu=return(false)> <td>no </table> ¿ÉÓÃÓÚTable
2. <body onselectstart="return false"> È¡Ïûѡȡ¡¢·ÀÖ¹¸´ÖÆ
3. onpaste="return false" ²»×¼Õ³Ìù
4. oncopy="return false;" oncut="return false;" ·ÀÖ¹¸´ÖÆ
5. <link rel="Shortcut Icon" href="favicon.ico"> IEµØÖ·À¸Ç°»»³É×Ô¼ºµÄͼ±ê
6. <link rel="Bookmark" href="favicon.ico"> ¿ÉÒÔÔÚÊղؼÐÖÐÏÔʾ³öÄãµÄͼ±ê
7. <input style="ime-mode:disabled"> ¹Ø±ÕÊäÈë·¨
8. ÓÀÔ¶¶¼»á´ø×Å¿ò¼Ü
<script language="JavaScript"> <!--
if (window == top)top.location.href = "frames.htm"; //frames.htmΪ¿ò¼ÜÍøÒ³
// --> </script>
9. ·ÀÖ¹±»ÈËframe
<SCRIPT LANGUAGE=JAVASCRIPT> <!--
if (top.location != self.location)top.location=self.location;
// --> </SCRIPT>
10. ÍøÒ³½«²»Äܱ»Áí´æÎª
<noscript> <*** src="/*.html>"; </***> </noscript>
11. <input type=button ......