javascript ÄÚ´æÐ¹Â¶¹¤¾ßʹÓÃ
javascriptÄÚ´æÐ¹Â¶µÄÎÊÌâÒ»Ö±ÒÔÀ´¶¼²»Êܵ½´ó¼ÒµÄÖØÊÓ£¬ÔÒòÊǶÔÓû§µÄÓ°ÏìûÓÐ̫ʵ¼ÊµÄ±íÏÖ£¬»òÐí½ü¼¸ÄêÄڴ淢չѸËÙ¡£½Å±¾ÄÚ´æÔÙй¶Ҳ²»»áÓÐÌ«´óÓ°Ïì¡£
µ±È»×÷Ϊǰ¶Ë¿ª·¢µÄͬѧÃÇ£¬¾Í²»ÄÜÓÐÕâÑùµÄ½ÄÐÒÐÄÀí¡£³öÏÖmemory leaksºÜ´ó³Ì¶ÈÉÏÊÇÒòΪ³ÌÐòµÄ²»³ÉÊìºÍ±àÂ벻̫¹æ·¶Ôì³ÉµÄ¡£²»¹ý£¬ÕâÀï¾Í²»ËµÈçºÎ³öÏÖÎÊÌâµÄ£¬¶ÔÎÊÌâµÄ³öÏÖÓÐÐËȤ¿ÉÒԲο¼ÒÔϵØÖ·£º
Understanding and Solving Internet Explorer Leak Patterns
IE's memory-leak fix greatly exaggerated
Memory Leakage in Internet Explorer – revisited
ÕâÀïÖ÷Ҫ˵˵£¬Ä¿Ç°¼¸¸ö¼ì²éjavascriptÄÚ´æÐ¹Â¶µÄ¹¤¾ßʹÓ÷½·¨:
Ê×ÏÈÎÒÃÇÓõ½µÄ¹¤¾ßÓÐÈý¸ö Drip/sIEve ,Javascript Leaks Detector, leak monitor¡£ÆäÖÐǰÁ½¸öÊÇÓÃÓÚ¼ì²éieµÄ£¬leak monitor ÊÇÓÃÀ´¼ì²éfirefoxµÄÇé¿öµÄ¡£ÕâÀïÖØµã˵һÏÂieϵÄÕâÁ½¸ö¹¤¾ß£¬ÓÉÓÚfirefoxµÄGC»úÖÆ±Èieǿ׳£¬Ö»ÒªieµÄÎÊÌâÏû³ýÁË£¬ÆäËûä¯ÀÀÆ÷»ù±¾Éϲ»»áÓÐʲôÎÊÌâ¡£
1.Drip/sIEve
DripºÍsIEveµÄ×÷ÕßÓ¦¸ÃÊÇͬһ¸öÈË£¬Á¬open souceÉϵÄÏîÄ¿¶¼ÊÇÔÚÒ»ÆðµÄ¡£²»¹ý£¬Æ½Ê±ÎÒÃÇÖ÷ҪʹÓÃsIEve¾Í¿ÉÒÔÁË£¬sIEveµÄ¹¦ÄܱÈDripÇ¿´óһЩ
sIEve ½çÃæºÜ¼òµ¥£¬×ó²à£ºÄÚǶÁËÒ»¸öä¯ÀÀÆ÷¿Ø¼þ£¬ÎÒ¿ÉÒÔ·ÃÎÊÈκÎÍøÖ·£¬Ï·½»¹ÓиöÄÚ´æ¼ì²é£¬ÕâÑùÎÒÃÇ¿ÉÒÔ·½±ã¿´³öÄÚ´æµÄÉý½µÇé¿öÒÔ¼°domʹÓÃÊýÁ¿ÇúÏß¡£
ÓÒ²àÃæ°å£¬ÎÒÃÇ¿ÉÒÔͨ¹ý Show in use ¿´µ½Ä¿Ç°Ò³ÃæÊ¹ÓõÄdomµÄÇé¿ö£¬Show Leaks ¿ÉÒÔ¿´µ½ÄÚ´æÐ¹Â¶µÄdom¡£µ±È»Ã¿´ÎÏÔʾй¶µÄÇé¿ö±ØÐëÊÇÒ³ÃæË¢Ðº󣬿´µ½ÉÏÒ»¸öÒ³ÃæµÄй¶Çé¿ö¡£
ͬʱͨ¹ýÓÒ²àµÄÊý¾ÝÑÕÉ«£¬ÎÒÃÇ¿ÉÒÔ¿´µ½ÄÚ´æµÄÉý½µºÍ¾ßÌåµÄÊýÁ¿¼¶
²»¹ýsIEveµÄ¹¤×÷ÔÀíÊǶÔËùÓÐdom½øÐÐÁËÒ»´Îhack,È»ºó×Ô¼ºÅжÏÄÇЩdomûÓб»Êͷŵô£¬µ«ÊǾßÌåµÄÇé¿ö±È½ÏÄÑ·ÖÎö³öÀ´¡£¶øÇÒ¸ú×ÙÓÐÎÊÌâµÄdomÐèÒªÒ»¶¨¼¼ÇÉ£¬¶ÔÓÚ´óÐ͵ÄÓ¦ÓóÌÐò£¬¸ú×ÙÄѶȴó¡£
²»¹ýÓÃÀ´¼ì²âСģ¿éµÄÄÚ´æÊ¹ÓÃÇé¿ö»¹ÊÇÒ»¸ö²»´íµÄÑ¡Ôñ£¬ÌرðÊÇ´óÏîĿģ¿éϸ·Öºó£¬¶Ôÿ¸öÄ£¿éµÄµ¥¶À²âÊÔ»¹ÊDZȽϲ»´íµÄ
Ð»Ð»âø·ÉͬѧÌáʾµÄÏÂÔØµØÖ·, Drip/sIEveÏÂÔØµØÖ·:
http://home.orange.nl/jsrosman/
2. Javascript Leaks Detector
ÕâÊÇÀ´×Ô΢ÈíGPDEÍŶӵÄÒ»¸öС¹¤¾ß,ÏÂÃæ¼ò³ÆJLD
¹ÙÍø: http://blogs.msdn.com/gpde/pages/javascript-memory-leak-detector.aspx
°²×°ºó£¬ÎÒÃÇ¿ÉÒÔÔÚieä¯ÀÀÆ÷µÄ ²é¿´->ä¯ÀÀÆ÷À¸ÖÐÕÒµ½
JLDÇ
Ïà¹ØÎĵµ£º
scrollHeight: »ñÈ¡¶ÔÏóµÄ¹ö¶¯¸ß¶È¡£
scrollLeft:ÉèÖûò»ñȡλÓÚ¶ÔÏó×ó±ß½çºÍ´°¿ÚÖÐĿǰ¿É¼ûÄÚÈݵÄ×î×ó¶ËÖ®¼äµÄ¾àÀë
scrollTop:ÉèÖûò»ñȡλÓÚ¶ÔÏó×î¶¥¶ËºÍ´°¿ÚÖпɼûÄÚÈݵÄ×î¶¥¶ËÖ®¼äµÄ¾àÀë
scrollWidth:»ñÈ¡¶ÔÏóµÄ¹ö¶¯¿í¶È
offsetHeight:»ñÈ¡¶ÔÏóÏà¶ÔÓÚ°æÃæ»òÓɸ¸×ø±ê offsetParent ÊôÐÔÖ¸¶¨µÄ¸¸×ø±êµÄ¸ß¶È
offsetL ......
ÔÚweb¿ª·¢¹ý³ÌÖУ¬¾³£»á³öÏÖÒòΪ¿Í»§¶ËµÄijЩÈí¼þ°æ±¾ÎÊÌ⣬¶øµ¼ÖÂÖÖÖÖÎÊÌâ¡£ÕâÀ´Ìì¾ÍÒòΪMedia Player°æ±¾µÄÎÊÌ⣬Òý·¢ÁËÒ»¸ö²»´ó²»Ð¡µÄÎÊÌâ¡£ÔÚµ÷ÓÃMedia Player²¥·ÅÊÓÆµµÄʱºò£¬Media Player9¾¹È»²¥·Å²»ÁË ... ...
²»¶à˵ÁË£¬»¹ÊÇÌù´úÂë°É£¡
<html xmlns="h ......
function
fn(a,b,c)
{
var
s
=
""
;
var
i;
s
+=
"
º¯Êý´«Èë²ÎÊý¸öÊý:
"
+
fn.arguments.length
+
"
\n
" ......
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=" ......
Õâ¶Îʱ¼ä̫æÁË£¬¶¼Ã»Ê±¼äÎÒ¹¤×÷ÐĵÃдÏÂÀ´ÁË£¬½ñÌì³é¸öʱ¼ä°ÑǰÁ½Ì칤×÷ÖÐÅöµ½µÄһЩºÜ¼¬ÊÖµÄÎÊÌâÒÔ¼°½â¾öµÄ·½·¨£º
ÎÊÌâÃèÊö£º
embed±êÇ©½ÓÊܵ½Ö±²¥Á÷ÒÔºóÔÚIEÏ¿ÉÒÔͨ¹ýplay()ºÍpause()·½·¨µÃµ½ºÜºÃµÄ²¥·Å/ÔÝÍ£µÄ¿ØÖÆ£¬µ«ÔÚFireFoxºÍsafari È¥ÎÞÄÜΪÁ¦£¬ÔÚFirefoxºÍsafariÏ¿ÉÒÔÕý³£µÄ²¥·Å£¨ÔÚsafariÐèҪװmedia²å¼þ£©£ ......