今天遇到一个怪事,在一个页面下, 有一个区域,用来动态的显示一些数据,主要是显示一个url,会使用jQuery去动态的改变a标签的属性,来显示相关信息。

但是却发现,在IE7下,当改变了a标签的属性之后,凡是www开头的url,显示文本都会添加一个http://,让人费解。

后来发现是一个小bug,但是不确定是jQuery还是IE7的问题。

解决方案就在设定A标签的属性的顺序上。

//当顺序为
this.linkElem.html(data.dspurl).attr('href', data.link).attr('title', data.link);
//时,就会发生以上怪现象,但是如果改变其顺序
this.linkElem.attr('href', data.link).attr('title', data.link).text(data.dspurl);
//就会正常了。