http://oxtag.com/html/ex/onfocus/link.html


링크에 포커스를 없애서 보기 싫은 점선 테두리를 없애는 방법입니다.
기존에는 링크마다 일일히 onfocus=this.bour() 또는 onfocus=blur()을 적용했죠.
간단하게 자바스크립트와 CSS메쏘드를 이용해서 한방에 제어할 수 있습니다.

무료계정에서 테스트 해봤는데 확장자가 htc도 지원하더라구요.
테스트는 컴내꺼에서 해봤습니다. 아마 다른곳도 될거라 생각되구요.


일단 아래와 같이 확장자가 htc파일을 만듭니다.
CSS에서 behavior 메쏘드로 실행시킬 자바스크립트를 따로 파일로 만드는 것입니다.

<PUBLIC:ATTACH EVENT="onfocus" ONEVENT="link_focus()" />
<SCRIPT LANGUAGE="JScript">
function link_focus(){window.event.srcElement.blur()}
</SCRIPT>

소스 설명을 대충하자면 이벤트중에 onfocus 이벤트를 잡아서 link_focus함수를 실행하란 거구요.
window.event.srcElement.blur()
요건 창 안에서 이벤트를 발생한 구성요소의 메쏘드를 blur()로 지정한다는 이야기지요.

위 소스를 그대로 onfocus.htc라고 만듭니다. 머... 이름은 다른 것으로 바꾸어도 되구요.
그리고 적용할 html 파일이나 기타 파일에 아래 CSS를 넣습니다.
<style> a {behavior:url(onfocus.htc)}</style>
onfocus.htc의 경로를 정확히 해주세요.

그럼 그 페이지의 모든 링크에 적용할 필요없이 링크에 대한 동작을 onfocus.htc에 적용한
스크립트로 실행됨니다. 즉, 점선 테두리가 생기지 않습니다.


다른 방법.

function bluring(){
   if(event.srcElement.tagName=="A"||event.srcElement.tagName=="IMG") document.body.focus();
}

document.onfocusin=bluring;


또 다른 방법.

function autoBlur(){
if(event.srcElement.tagName!="BODY") {
if(typeof(document.body)=='object')document.body.focus();
document.onfocusin = null;
}
}
document.onfocusin=autoBlur;



검색용 : 하이퍼링크 테두리, 하이퍼링크 점선, 링크 포커스, 링크 테두리, 링크 점선
Posted by 알 수 없는 사용자
,