其实是求解,这个到底是神马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)