2012-07-10 2 views
0

다음은 툴팁 스크립트 http://www.alessioatzeni.com/blog/simple-tooltip-with-jquery-only-text/입니다. 모든 브라우저에서 잘 작동하지만 기본 툴팁은 IE에서 비활성화되어 있지 않습니다.기본 툴팁 비활성화

기본 툴팁을 사용하지 않도록 설정하려면 다음 스크립트를 어떻게 업데이트합니까?

<script type="text/javascript"> 
$(document).ready(function() { 
    // Tooltip only Text 
    $('.masterTooltip').hover(function(){ 
     // Hover over code 
     var title = $(this).attr('title'); 
     $(this).data('tipText', title).removeAttr('title'); 
     $('<p class="tooltip"></p>').text(title).appendTo('body').fadeIn('slow'); 
    }, function() { 
     // Hover out code 
     $(this).attr('title', $(this).data('tipText')); 
     $('.tooltip').remove(); 
    }).mousemove(function(e) { 
      var mousex = e.pageX + 20; //Get X coordinates 
      var mousey = e.pageY + 10; //Get Y coordinates 
      $('.tooltip').css({ top: mousey, left: mousex }) 
    }); 
}); 
</script> 

답변

2

흐림 효과가있는 요소에 title 속성을 다시 추가 할 이유가 없습니다. jQuery 메타 데이터에 저장되어있다. 내 생각 엔 IE가 여전히 그것을 보여주고있는 이유입니다. 줄을 제거하십시오

 $(this).attr('title', $(this).data('tipText')); 

그리고 수정되었는지 확인하십시오.


편집 : 일부 요구 사항을 충족하지 못했습니다. 이 테스트되지 않은,하지만 작동 할 수 있습니다 : 그것은 each 블록에 두 번 $(this)를 호출로이 하위 최적

$(document).ready(function() { 
    $('.masterTooltip').each(function() { 
     var title = $(this).attr('title'); 
     $(this).data('tipText', title).removeAttr('title'); 
    }).hover(function(){ 
     $('<p class="tooltip"></p>') 
     .text($(this).data('tipText')) 
     .appendTo('body') 
     .fadeIn('slow'); 
    }, function() { 
     $('.tooltip').remove(); 
    }).mousemove(function(e) { 
     var mousex = e.pageX + 20; 
     var mousey = e.pageY + 10; 
     $('.tooltip') 
     .css({ top: mousey, left: mousex }) 
    }); 
}); 

하는 것으로,하지만 고칠 수있을만큼 쉽게해야합니다.

+0

안녕하세요 스콧, 즉시 답장을 보내 주셔서 감사합니다 .. 나는 당신이 나에게 말한 것을 시도했다 .. 지금 무슨 일이 일어나고있는가, 처음 mouseover 할 때 이미지, 처음 제목과 툴팁이 모두 나타난다. 두 번째로, 마우스 오버 할 때 같은 이미지 나 제목 툴팁이 표시되지 않습니다 .. – varsha

+0

죄송합니다, lin 제목을 수집하고 tipText를 .hover 브랜치 밖으로 이동시켜 이전 .each 섹션으로 이동해야합니다. 내 대답을 업데이트 할게. –

+0

고마워 Scott! 그것은 내가 원하는대로 정확히 작동합니다 ... – varsha

0

IE 나 다른 브라우저의 왼쪽/오른쪽 하단에 표시된 기본 툴팁을 비활성화하는 간단한 해결책이 있습니다.

그냥 간단한 자바 스크립트 함수를

function GoToLink() 
    { 
     location.href = "mypage.htm"; 
    } 

전화

같은 태그에이 기능을 쓰기 [기본 툴팁이 동일하면 내가 언급 한 바와 같이]
<a id="204" name="wow" class="SettPage" href="" onclick="GoToLink()"> 
+0

나는 그 질문에 대해 오해했다고 생각합니다. 요소에 제목 속성이있는 경우 툴팁을 비활성화하지 않습니다. 이렇게하면 대상 URL이 상태 표시 줄에 표시되지 않습니다. – Vincent

관련 문제