文章标签 » bug

firefox favicon丢失

测试环境: firefox3.0 – 3.5

强大的qa同学,连favicon都照顾到了,具体情况:有个页面刚进去的时候时kaixin网的favicon,加载完毕是人人网的favicon~

demo:https://bluehua.org/demo/favicon_firefox.html

<html>
<head>
<link href="http://www.google.cn/favicon.ico" rel="shortcut icon" type="image/x-icon" />
</head>
<body>
<script>
window.location.href = '#fdsafasd';
</script>
</body>
</html>

页面加载过程中,如果使用脚本修改锚点,firefox便会到server的根目录取默认的favicon.ico,如果取不到就变空了,如果取到了,但跟指定的favicon不一样,情况就跟qa同学看到的一样,更神奇了..

但是发现像下面这样window.onload时改变锚点没有问题
demo:https://bluehua.org/demo/favicon_firefox_onload.html

<html>
<head>
<link href="http://www.google.cn/favicon.ico" rel="shortcut icon" type="image/x-icon" />
</head>
<body>
<script>
window.onload=function()
{
window.location.href = '#fdsafasd';
};
</script>
</body>
</html>

getAttribute(‘onclick’) in IE

第n次火星了,可是依然没去过火星.
这个是最近用到才知道,需求是替换onclick属性中的关键字,但是俺单纯的以为geAttribute都会返回一个字符串给我,没想到ie又一次显示了它独到的见解~

<html>
<p id="test" onclick="alert('click');">click me~</p>
<script>
document.write('<pre' + '>');
var el = document.getElementById('test');
var at = el.getAttribute('onclick');
document.writeln(at);
document.writeln(typeof at);
document.write('</' + 'pre>');
</script>
</html>

ff下输出

alert('click');
string

ie6和ie7下输出:

function anonymous()
{
alert('click');
}
function

ie8下输出:

function onclick()
{
alert('click');
}
function

其他事件属性肯定也会有同样表现,ie8十分搞笑,换了一个函数名…

最后对于ie我只有这样了:

<html>
<p id="test" onclick="alert('click');">click me~</p>
<script>
var el = document.getElementById('test');
var at = el.getAttribute('onclick');
//函数换成字符串
at = at.toString().replace(/^function (anonymous|onclick)\(\)\n\{\n(.*)\n\}$/m, '$2');
//替换关键词
at = at.replace('click', 'wahaha');
//再变成函数放回去
el.setAttribute('onclick', new Function(at));
</script>
</html>

@¥竟然能使ie6的文字链接神奇变形。。

更新:
sonic同学发现了bug的起因:
只要a标签的innerHTML是以http[s]://开头或者包含”@xx”类似email的字符串就会出现这种情况。。
———————————————-
今天qa发现的巨灵异的bug
———————————————-
由于网站域名切换,有些老的数据无法短时间切换,所以打算用js替换。具体实现:当鼠标移到link上时判断是否是老域名,如果是则替换~
代码类似下面

https://bluehua.org/demo/href+@.html

这段代码在除了ie6的浏览器都是正常的,鼠标移上时两个link的href都变成http://oo.test,但是ie6下第一个link出问题了:鼠标上去,链接文字没了。

“@¥”这两个字正好是qa组leader的id后缀,真牛x~

ie下的默认回车提交之强大…

ie下如果您在text输入框按回车就会默认将表单提交,可是俺万万没有想到,竟然强大到连submit的onclick事件都能触发了…

示例1:input外面有form标签,输入框按回车会提交表单

<html>
<body>
<form action="http://g.cn">
    <input type="submit" value="haha" onclick="alert(1);" />
    <input  type="text" />
</form>
</body>
</html>

示例2:input外面没有form标签,输入框按回车会触发submit的onclick事件

<html>
<body>
<input type="submit" value="haha" onclick="alert(1);" />
<input  type="text" />
</body>
</html>

ajax提交流行的今天,form标签往往直接被省略,所以这个特性很可能造成用户在某个输入框按了回车,然后某处一个不相关的button被ie点了一下….

ie下title里出现重复锚点的bug

以前人品好,没碰到过…

情况就是当页面里有n(n>0)个flash,而且url里带有锚点时页面的title后面就会跟n个锚点

screenshot_014.png

应该算adobe flash 的bug吧,具体:

http://bugs.adobe.com/jira/browse/FP-240

IE appends anchor name to title bar

adobe的网站上说Flash Player 9 – 9_0_124_0,IE7下才有这个问题,可俺的问题是在flash10,ie6下发现的,不靠谱……