2009-05-01 45 views
2

是否有任何方法可以抑制链接上的弹出式标题,但仍然保留在视觉障碍者的页面上?抑制链接标题

回答

4

这是浏览器解释链接标题并显示工具提示/弹出窗口的功能。没有办法压制他们。我试过(因为一个客户也不喜欢他们),他们周围没有办法。

+1

Firefox没有任何链接的工具提示,除非它们声明了title属性。 – 2009-05-01 01:13:31

+0

是不是问题隐藏工具提示时如何保留标题属性?我不知道任何浏览器在没有标题属性的链接上显示工具提示。工具提示会说什么? – Calvin 2009-05-01 01:27:43

+0

假定工具提示可能是链接的URL。 – 2009-05-01 01:33:50

-1

我的浏览器中的链接不显示类似的工具提示,除非它们具有title属性。

如果你愿意,你可以使用Greasemonkey在evey页面上运行这一点的javascript来移除它们。

var anchorTags; 
anchorTags = document.getElementsByTagName("a"); 
for(var i = 0; i < anchorTags.length; i++) { 
    anchorTags[i].removeAttribute("title"); 
} 
0

...它可能不是很理想,但你总是可以尝试,代替title属性在<a href>,在<a>标签内的<span>

/* screen.css */ 

a { } 

a span.titleText { 
    display: none; 
    position: absolute; 
    bottom: 1.2em; 
    left: 0; 
} 

a:hover span.titleText, 
a:active span.titleText, 
a:focus span.titleText { 
    display: block; 
} 

/* audio.css */ 

a span { 
    display: inline; /* or whatever the relevant attribute would 
         be in an audio stylesheet. */ 
} 
<head> 
    <link href="screen.css" type="text/css" rel="stylesheet" media="screen" /> 
    <link href="audio.css" type="text/css" rel="stylesheet" media="screen-reader, audio" /> 
</head> 

<a href="http://some.url.com"> 
    <span class="titleText">This is the title</span>This is the link 
</a> 

但是,我不认为这是一个特别实用的解决方案。我相当肯定它不会验证。如果我知道JS,我会建议一些更可行的方法,但即使如此,我也不相信它会起作用。

0

这个工作在jQuery的。

var val; 
$('[YOUR_SELECTOR]').hover(function() { 
    val = $(this).attr('title'); 
    $(this).removeAttr('title'); 
    },function() { 
    $(this).attr('title',val); 
}) 
1

我有一个项目,客户希望展示自己的工具提示(这是用CSS做)这个问题,但它也显示,因为浏览器发起的提示也,所以它表现出两次。我们通过删除'title'属性来解决这个问题,而是使用'data'来填充CSS中的文本。

我不确定您是否将它们保留在视觉障碍者的页面上,因为它们只在源代码中可见?

例如:

<a href="link" title="something">Link title here</a>

将显示在页面上的链接“点击这里链接标题”还有恼人的弹出,当你将鼠标悬停在上面。

<a href="link" data="something">Link title here</a>

会“在这里链接标题”显示链接,但不会显示在盘旋了恼人的弹出,但你仍然可以使用data标签引用任何你想放在那里(在我们的例子中,我们把CSS的工具提示的文本引用到)。

显然,如果完全删除标题标签,问题就解决了,但是您说需要保留它,所以这是我以前使用的解决方法。