IE有一个问题,例如,如果我尝试动态更改链接,如:
<a href="http://www.foo.com">www.foo.com</a>
要
<a href="http://www.bar.com?q=www.foo.com">www.foo.com</a>
使用JavaScript将链接更改为(仅限IE)
<a href="http://www.bar.com?q=www.foo.com">http://www.bar.com?q=www.foo.com</a>
这不是我想做的事。
我找到了解决方案,例如保存innterHTML,更改链接并恢复innterHTML 旧的价值...但如果内部内容有一些动态附加,该怎么办? 事件?遗失了。
目前我尝试检查是否有任何带有innerHTML的HTML属性,如果没有,我还原 旧的HTML。
function change_link(a,newlink)
{
if(navigator.appName == 'Microsoft Internet Explorer') {
var old = a.innerHTML ;
if(old.indexOf('<')==-1) {
a.href=newlink;
a.innerHTML = old;
return
}
}
a.href=newlink;
}
可能有任何问题吗?
事件是否可以动态地附加到内部HTML的纯文本中,并且在innerHTML重置期间会丢失?