2013-03-12 2 views
18

title 속성이있는 앵커 요소가 있습니다. 브라우저 창에서 마우스를 가져 가면 나타나는 팝업을 숨기려고합니다. 내 경우 , CSS가있는 링크에서 제목을 숨길 수 있습니까?

$("a").attr("title", ""); 

특정 이벤트가 발생 후 jQuery를 모바일의 제목이 다시 나타납니다 때문에

(기본적으로 매번 앵커 요소는 다시 그려됩니다) 같은 것을 할 수 없습니다. 그래서 CSS를 통해 제목을 숨기를 바랍니다. 같은

뭔가 : 그것은 전체 앵커 요소를 숨 깁니다 때문에

a[title] { 
    display : none; 
} 

이 작동하지 않습니다. 제목 만 숨기고 싶습니다. 이것은 가능한가? 팝업이 표시되지 않아야합니다. CSS와 만 DOM (tipically :before :aftercontent: '...';와, 그것을 제거하거나 속성을 변경할 수 없습니다.

유일한 방법은 라이브 사용자 정의 이벤트를 만드는 것입니다 (들에게 내용을 추가 할 수 있기 때문에 CSS에 의해

+0

아니요, 툴팁을 숨길 수 없습니다. 그것은 CSS 규격의 일부가 아닙니다. –

+0

[jQuery를 사용하여 브라우저에서 툴팁을 비활성화하는 방법?] (http://stackoverflow.com/questions/1027762/how-to-disable-tooltip-in-the-browser-with-jquery) – andyb

+0

That 's too 나쁜. 그러면 다른 것을 찾아야 할 것입니다. –

답변

1

수 없습니다 . "change-something") :

$("a").on("change-something", function(event) { this.removeAttr("title"); });

및 트리거 모든 변화 :

... $("a").trigger("change-something");

여기에 정보와 데모 더보기 : @ boltClock의 제안 사항에 따라

http://api.jquery.com/trigger/
http://api.jquery.com/removeAttr/

7

편집을, 난 내가 CSS의 솔루션은으로, 여기에 적절하다고 생각하지 않습니다 말할 것이다 브라우저는 링크의 title 속성으로 무엇을 할 것인지 결정합니다. 내 지식으로는 CSS가이 문제를 처리 할 수 ​​없습니다. 언급 한 바와 같이 jquery를 사용하면 제목을 빈 문자열로 대체하는 것이 jquery mobile이 일부 지점에서 다시 작성하기 때문에 작동하지 않습니다. 그러나 이것은 JQM과는 독립적으로 작동하며 중요한 SEO 인 title 속성을 완전히 제거하지 않습니다.

이 작동 :이 도움이

$('a["title"]').on('mouseenter', function(e){ 
    e.preventDefault(); 
}); 

희망.

EDIT 테스트 후에 $ ('body'). on ('mouseenter')의 초기 코드가 변경되었습니다. 이것은 작동하는 것으로 확인되었습니다.힌트 라벨은 다음과 같은 CSS 속성을 사용하여 링크

+0

다른 답변에서 내 의견을 옮길 때 : 이것은 나에게 CSS처럼 보이지 않습니다. – BoltClock

+1

음, @BoltClock이 아니기 때문입니다. OP는 그가 포함 된 jquery 스크립트와 같은 것은 작동하지 않을 것이라고 말했다. jquery 모바일을 사용하고 있기 때문에 jquery가 그의 프로젝트에 사용되고 있다고 가정하고 jquery 대답 (작동)이 공정한 게임이라고 가정합니다. – Todd

+0

jquery가 이벤트를 처리 할 수없는 경우 지옥이있을 수 없는지 확인하십시오. – Todd

0

시도는이

$(document).ready(function() { 
    $("a").removeAttr("title"); 
}); 

이 title 속성을 제거합니다 사용하여 코드를 변경하는 것을 제목 특성 텍스트는 마우스를 올릴 때 표시되지 않습니다.

pointer-events: none; 

이 CSS 속성은 요소 i 마우스 이벤트의 대상이 아닙니다.

+1

SEO 및 숨겨진/삭제 된 콘텐츠 – qwertzman

11

에 가져가 보장됩니다 때 표시되지 않도록

+1

이렇게하면 링크를 클릭 한 후 모든 기능을 사용할 수 없게됩니다. 전체 링크를 무의미하게 렌더링합니다. – Hafenkranich

+1

예 @Hafenkranich, 그래서 내 대답은 "CSS 속성은 요소가 어떤 마우스 이벤트의 대상이되지 않도록하기 때문에 JS가 더 나은 솔루션이라는 것을 명심했다."라고 썼습니다. –

1

스팬에 내부 텍스트를 래핑하고 빈 제목 속성을 부여 할 수 있습니다.

<a href="" title="Something" class=".some-tooltip-class"><span title="">Your text</span></a> 
+1

서재응은 이것을 좋아할 것입니다. – qwertzman

+1

이것은 좋은 해결책입니다. 불행히도 모든 브라우저에서 작동하지 않습니다 (예 : 대상 요소의 '제목'이 비어 있으면 Safari가 상위 제목을 사용하여 툴팁을 표시 함) – guari

관련 문제