去掉超链接的虚线框,在IE中至少有这么几种办法:
- a {blr:expression(this.onFocus=this.blur())}
- onfocus=”this.blur()”
- 用.htc 实现
- 使用IE的私有属性hidefocus=true
不考虑性能及其他因素,这几种办法在IE类浏览器遨游、TT、360中都表现相同,但是在搜狗浏览器中,会遇到点麻烦。默认设置的搜狗兼容模式会进行弹出窗口拦截,大概有这么几种情况:
- a.新窗口打开会被拦截,原窗口不会。
- b.原页面打开会被拦截,但是作为iframe调用不会。
- c.页面放到服务器上会拦截,放在本地不会。
- d.前面提到的去掉虚线框的前三种办法有可能会被拦截,使用hidefocus=true则有可能放过你,具体见demo,为什么都是有可能,见下面三点。
- e.如果页面有两个指向相同地址的a链接,被拦截的那个a先被点击,那紧接着点击不会被拦截的a也会被拦截。
- f.如果页面有两个指向相同地址的a链接,不被拦截的那个a先被点击,那紧接着点击会被拦截的a则不会被拦截,刷新页面也不会。
- g.如果页面有两个指向相同地址的a链接和一个其他指向其他地址的a链接,如果不被拦截的那个二分之一a先被点击,接着单独的那个a被点击,此时再点击会被拦截的a则会被拦截。(f和g的区别在于,点击两次相同的链接a之间是否点击了另外的其他链接。)
- h.有几个例外不会被拦截,搜狐(http://www.sohu.com/)QQ(http://www.qq.com/)Google(http://www.google.com/)谷歌中国(http://www.google.cn/)
(但是,谷歌中国新家(http://www.google.com.hk/)会被拦截,另外焦点房产网、17173、chinaren、搜狗包括搜狗浏览器官网均会被拦。)