其实是求解,这个到底是神马bug。
明天到公司再想一想,这个到底是那里的问题,顺便改一下这个脚本,我的机器IE7的控制台是各种跑,各种死。
bug复现地址:http://sae.sina.com.cn/?m=front&a=rate
多谢 chjund 提醒,将 document.width
替换为 document.body.clientWidth
了。
var a = document.getElementsByTagName('body')[0];
var a = a.getElementsByTagName('*');
var w = q = r = 0,
z = '';
w = document.body.clientWidth;
for (i = 0; i < a.length; i++) {
if (a[i].nodeName != 'SCRIPT') {
r = a[i].offsetLeft + a[i].offsetWidth;
if (w <= r) {
q++
z += 'Overflow Element:@TYPE[' + a[i].nodeName + '], @INDEX[' + i + '], @VALUE[' + r + ']' + '\n'
}
}
}
console.log('Total Elements:', a.length, '(', (q / a.length * 100).toFixed(2) + '%', ')')
console.log(z)