悬停时隐藏标题标签

2022-01-20 00:00:00 title popup html onhover

我查看了以前的问题,但没有一个对我真正有用,我检查了谷歌,发现的信息似乎很模糊,所以我想我会在这里尝试.

I've looked through previous questions and none of them have really worked for me, i've checked google to and the information I found seems pretty vague, so I thought i'd try here.

是否有人知道/或已经解决了在悬停时显示标题标签的问题.我有一系列链接和图像将被分配标题标签,但是,其中一些将显示最好不要在悬停时弹出的信息.

Is anyone aware/or have tackle the problem of title tags displaying on hover. I have a series of links and images that will be assigned title tags, however, some of them will be displaying information that would be better off not popping up on hover.

我可以使用一个全局函数将其应用于各种标题标签吗?一个例子如下:

Is there a global function I could use to apply this to all manner of title tags? An example would be as follows:

<a href="service.php" title="services for cars" />

如果可能,我想禁用悬停时出现的标题来自汽车的服务".

If possible I would like to disable the title "services from cars" appearing on hover.

再次感谢.

推荐答案

这应该可以很好地禁用单个标题:

This should work just fine to disable single title:

<a href="service.php" title="services for cars" onmouseover="this.title='';" />

如果你以后需要标题,你可以恢复它:

If you need the title afterwards, you can restore it:

<a href="service.php" title="services for cars" onmouseover="this.setAttribute('org_title', this.title'); this.title='';" onmouseout="this.title = this.getAttribute('org_title');" />

这种方式虽然不是通用的.. 要将其应用于所有锚点,请使用这样的 JavaScript 代码:

This way is not generic though.. to have it applied to all the anchors, have such JavaScript code:

window.onload = function() {
    var links = document.getElementsByTagName("a");
    for (var i = 0; i < links.length; i++) {
        var link = links[i];
        link.onmouseover = function() {
            this.setAttribute("org_title", this.title);
            this.title = "";
        };
        link.onmouseout = function() {
            this.title = this.getAttribute("org_title");
        };
    }
};

现场测试用例.

为更多标签应用相同的内容(例如<img>)首先将代码的核心移动到一个函数中:

to apply same for more tags (e.g. <img>) first move the core of the code to a function:

function DisableToolTip(elements) {
    for (var i = 0; i < elements.length; i++) {
        var element = elements[i];
        element.onmouseover = function() {
            this.setAttribute("org_title", this.title);
            this.title = "";
        };
        element.onmouseout = function() {
            this.title = this.getAttribute("org_title");
        };
    }
}

然后把代码改成:

window.onload = function() {
    var links = document.getElementsByTagName("a");
    DisableToolTip(links);
    var images = document.getElementsByTagName("img");
    DisableToolTip(images);
};

相关文章