当将鼠标悬停在图像上时,是否有办法禁用显示在浏览器中的默认工具提示?这是在不删除title或alt标签的情况下。另一个选项是,工具提示是否可以显示某些图像类型(如JPG)的特定文本和另一种不同图像类型的文本(如PNG)?
答案 0 :(得分:0)
默认情况下,title
属性在大多数浏览器中用作悬停文本。我可以看到删除它们的唯一方法是删除title属性。 JavaScript将能够做到这一点。我确信有一种纯粹的DOM方法可以做到这一点,但我使用的是一个小jQuery:
$(function() { // when the document becomes ready for manipulation
$("[title]").removeAttr('title'); // removes title from all things that have title
// your other options:
// all images who's src ends in .jpg
$("img[src$=.jpg]").attr('title','JPG Image');
// all images who's src ends in .png
$("img[src$=.png]").attr('title','PNG Image');
}
如果您需要在页面上粘贴此内容,我建议您创建一个包含此代码的site.js
文件。然后,您需要告诉您的HTML页面加载它。你应该有一些主要的网站模板文件(它可能已经有jQuery - 如果是这样的话,请跳过jQuery的include:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"> </script>
<script type="text/javascript" src="/js/site.js"> </script>
对评论的回复:如何将工具提示中出现的字符限制为零或最多让我们说10?
这个问题稍微复杂一些,因为这个问题可以在带标题的元素上拉出.each()
:
$("[title]").each(function() {
var $this = $(this); // shortcut for later
var title = $this.attr('title'); // get the title attribute
// if the length of our title was 10 characters or more, shorten it and set:
if (title.length>10) {
$this.attr('title', title.substring(0,10));
}
});