2010-05-04 2 views
3

IE에서 'hover'속성을 모든 HTML 요소에 사용하는 방법은 무엇입니까?IE의 비 링크 요소에 마우스를 놓으면 문제가 발생합니다.

예 : 'li : hover' IE6에서는 작동하지 않습니다. (나는 다른 버전의 IE에 대해 모른다.)

편집 : 저는 CSS없이 자바 스크립트로하고 싶습니다. 간단한 메뉴입니다.

+0

': hover'는 IE8에서 올바르게 작동합니다. – josh3736

+0

고맙지 만 많은 사용자가 아직 IE6을 사용하고 있습니다. 귀하의 의견을 주셔서 감사합니다 –

답변

3

을 호버를 만들 것 어쨌든 IE 6에서 자바 스크립트 없이도 할 수 있습니다.

한 수준의 메뉴 인 경우 스타일을 조정하여 링크가 디스플레이로 렌더링되도록 할 수 있습니다. 필요할 때마다 여분의 스타일링 유연성을 위해 링크 안에 스팬을 넣지 만 개인적으로 다중 레벨 메뉴로 확장하려고하는 행운이 없었습니다.

우아한 퇴행 전략이 최선의 방법 일 수 있습니다.

+0

가, 마침내 내가 몇 조각을 사용하십시오 csshover의 HTC 등 http://www.xs4all.nl/~peterned/csshover.html 에서 자바 스크립트 코드 IE에 대한 본문의 동작을 변경하는 파일입니다. Javascript 없이는 살 수없는 것 같습니다! –

4

아니요, IE6은 모든 요소에 대해 : hover 의사 클래스를 올바르게 구현하지 않았습니다. 앵커에 대해서만 지원합니다.

2

onmouseover/onmouseout을 javascript와 함께 사용하십시오.

요소를 마우스로 가리키면 가리키는 내용과 함께 숨겨진 div가 표시됩니다.

요소를 마우스로 끌면 내용을 가리키고 div가 숨겨집니다. 늦게 모든 다리 작업을

<span id="hoverSpan" class="hoverelement" hoverdata="this is my hoverdata">HoverSpan</span> 
<a href="#" id="hoverAnchor class="hoverelement" hoverdata="this is my hover data">HoverAnchor</a> 
<div id="hoverdiv" style="display:none"></div> 

<script language="javascript"> 
    $(document).ready(function() { 
    $(".hoverelement").each(function() { 
     var myelement = $(this); 
     myelement.mouseover(function (e) { 
     var myhovertext = myelement.attr("hoverdata"); 
     $("#hoverdiv").html(myhovertext).show(); 
     }); 
     myelement.mouseout(function (e) { 
     $("#hoverdiv").html(myhovertext).hide(); 
     }); 
    }); 
    }); 
</script> 

그것을 싶지 않다 나는 이것을 테스트하지 않은 경우

jQuery를이 쉽게,하지만 아이디어가있다. 기본적으로 당신은 .... 클래스 'hoverelement "

+0

,하지만 자바 스크립트를 사용하고 싶지 않아요. CSS 만 있으면됩니다. –

+0

Just css로는 가능하지 않다고 생각합니다. 다른 브라우저/버전과 너무 많은 문제가 있습니다 확인 호버 스타일 –

0

내가 정확히 모르겠지만 그것을 IE6에서 작동 할 수 있습니다 ... jquery을하려고 어떤 요소에 대해 나는 생각하지 않는다

관련 문제