为IE找个新死法
来源:互联网 发布:ps淘宝主图广告 编辑:程序博客网 时间:2024/05/01 14:07
IE在解释表达式的时候显然大有优化的余地,FireFox就没这个毛病。下面这段小代码可以轻松让IE崩溃掉:
var n=32768;
var s=new Array(n).join("0+")+0;
if(confirm("真的要杀了浏览器吗?")){
eval(s);
alert("杀不掉,试试把n调大一点?");
}
var s=new Array(n).join("0+")+0;
if(confirm("真的要杀了浏览器吗?")){
eval(s);
alert("杀不掉,试试把n调大一点?");
}
其实就是让IE解析一个“0+0+0+0....”的表达式。
在我的机器上,IE6跑到32255个加法计算就自动关闭了(可以作为一个新的无提示关闭浏览器漏洞呵呵,会把同一个进程打开的全部窗口一起杀掉),IE7还要差些,在31515就挂了。opera也好不到哪里去,32180就崩溃了。而FireFox一直跑到2^27(ie和opera还不到2^15)的时候把我的内存全吃光了,在虚拟内存支持下还是可以执行完成:
var s="0+",n=27 ;
for(var i=0;i<n;i++) s+=s;
alert(s.length/2)
s+=0;
if(confirm("真的要杀了浏览器吗?")){
eval(s);
alert("杀不掉,试试把n调大一点?");
}
for(var i=0;i<n;i++) s+=s;
alert(s.length/2)
s+=0;
if(confirm("真的要杀了浏览器吗?")){
eval(s);
alert("杀不掉,试试把n调大一点?");
}
- 为IE找个新死法
- 为IE增加按钮
- 判断 是否为IE
- 判断是否为IE
- 判断是否为ie
- ie下人为的bug。
- 恢复IE为默认下载工具
- 判断浏览器是否为IE
- 判断是否为IE浏览器
- Session为每个IE缓存信息
- PB结束进程---举IE为例
- 为IE浏览器添加右键选项
- IE 8设置为单进程
- 为win7添加桌面IE.reg
- 为CE6.0 Image添加IE Brower
- 为IE添加词霸即划翻译
- 为IE的javascript提速javascript
- Enter转换为Tab(兼容IE,Firefox)
- 如何导出存储过程和自定义函数?
- 中文字符无法在CB中编译
- struts 2学习(有关Unable to load bean: type: class:com.opensymphony.xwork2.ObjectFactory的错误)
- JAVA 反射之方法调用
- 我心里的流星...
- 为IE找个新死法
- 用JAVA 实现“生产者-消费者”问题
- 【住院记】--那麻木中的一刀:一、前记之6. 体检
- XML编程接口的比较:DOM SAX JDOM JAXP
- JAVA基础
- 读神经所所长2007年会摘记
- 做个优秀的程序员
- 高效的java异常处理
- VSTS心得[1]