【转载:http://www.enation.cn/html/knowledge/JavaScript/200910/16-155.html】
方法一:
在链接处加入语法 onfocus="this.blur()"
如:
文字链接 <a href="#" onfocus="this.blur()"> 这里是链接文字 </a>
图片链接 <a href="#" onFocus="this.blur()"><img src=XXX.JPG border=0></a>
不难看出,onfocus="this.blur()"语法必须是放在href里的。
方法二:
方法一的缺点是每个链接都得加上那么一句语法,那么有没有一句搞定的呢~当然有了,就是这个方法二咯~~~就是使用JS语法来删除所有链接虚线,方法是在<head>与</head>之间加入下面语法
<script type="text/javascript">
window.onload=function(){
for(var ii=0; ii<document.links.length; ii++)
document.links[ii].onfocus=function(){this.blur()}
}
</script>
方法三:
在<head >区之间加代码
<script language='JavaScript'>
function bluring(){
if(event.srcElement.tagName=="A"||event.srcElement.tagName=="IMG") document.body.focus();
}
document.onfocusin=bluring;
</script>
以下来源于另一篇文章
也许你会觉得当点击时焦点出现的虚线很不好看,那就让我们把它去掉吧!
一,在<a>标签中加入onFocus="this.blur()"语句:
-----------------------------------------------------------
<a href="#" onFocus="this.blur()">try</a>
-----------------------------------------------------------
二,在<a>标签中加入hidefocus:
-----------------------------------------------------------
<a href="###" hidefocus>link</a>
-----------------------------------------------------------
三,如果连接太多,可以用外部链接 .HTC 文件。
如,blur.htc 文件内容如下:
----------------------------------------------------------
<public:attach event="onfocus" onevent="makeblur()"/>
<script language="javascript">
function makeblur(){
this.blur();
}
</script>
-----------------------------------------------------------
在 CSS 中加入如下代码:
-----------------------------------------------------------
A { behavior:url(blur.htc); }
-----------------------------------------------------------
四,使用CSS样式,可加入代码:
-----------------------------------------------------------
a {blr:expression_r(this.onFocus=this.blur())}
-----------------------------------------------------------
这样,站内所有的文章都实现了无虚线效果了。
在网页超链接中,点击链接后会显示虚线边框。通过给超链接加上onfocus="blur()"即可去掉边框.如:<a href="http://hi.baidu.com/lg0805" onfocus="blur()">百度空间</a>
局部控制
<a href="link1.htm" onfocus="this.blur()">link1</a>
<a href="link1.htm" onfocus="this.close()">link1</a>
<a href="link1.htm" hidefocus="true">link1</a>
<a href="link1.htm" hidefocus="hidefocus">link1</a>
全局控制
CSS实现(实践可用)
a{blr:expression_r(this.onFocus=this.close());}
a{blr:expression_r(this.onFocus=this.blur());}
a:focus { -moz-outline-style: none; }
HTC实现 IE支持,页面载完才有效果
把下面这段代码存为.htc为扩展名的文件
<script language="javascript">
function hscfsy(){
this.blur();
}
</script>
调用 a {behavior:url(htc文件所在路径地址)}
JS遍历实现
{
for(var ii=0; ii<document.links.length; ii++)
document.links$[$ii$]$.onfocus=function(){this.blur()}
}
JS封装为函数
aTag=document.getElementsByTagName_r(tName);
for(i=0;i<aTag.length;i++)aTag$[$i$]$.hideFocus=true;
//for(i=0;i<aTag.length;i++)aTag$[$i$]$.onfocus=function(){this.blur();};
}
当前是添加一个hidefocus的属性,注释掉的句子是添加onfucus=this.blur();
然后调用fHideFocus("A"),即可把a的虚线框去掉
通过传递不同的参数,可以去掉更多的虚线框,比如"BUTTON"可以去掉button的
但要记住参数要用大写字母
A. map area内链接如何消除链接虚线?
这是一个观念上的错误,其实应该在所在map的图片上加以控制,而不是在area内,参考传统办法
B. 关于onFocus
<Img Src="Example.jpg" Border=0>
</a>
onFocus是设置鼠标焦点事件的东西,这个可以用,也可以不用,不过为了让更多的浏览器识别的话,建议采用Border=0 这个才是去除虚线框的关键所在