【发布时间】:2013-08-23 22:18:12
【问题描述】:
我正在尝试用纯 JavaScript 制作工具提示,显示在 hover 上。就像 Stack Overflow 中的一样,将鼠标悬停在配置文件名称上时,会显示 div。
我尝试使用 onmouseover 、 onmouseout 并添加了 setTimeout 让用户有几秒钟的时间将鼠标移到工具提示内容上。但它并没有像我想象的那样工作。
比起使用任何库,我真的更喜欢纯 JavaScript。有人能帮帮我吗?
这是我在纯 JavaScript 中所做的。
HTML
<div class = "name" onmouseover="show()" onmouseout="hide()">
NAME
<div class = "tooltip">
PROFILE DETAILS
</div>
</div>
<div class = "name" onmouseover="show()" onmouseout="hide()">
NAME 2
<div class = "tooltip" >
PROFILE DETAILS 2
</div>
</div>
<div class = "name" onmouseover="show()" onmouseout="hide()">
NAME 3
<div class = "tooltip" >
PROFILE DETAILS 3
</div>
</div>
CSS
.name{
float:left;
margin:100px;
border:1px solid black;
}
.tooltip{
position:absolute;
margin:5px;
width:200px;
height:100px;
border:1px solid black;
display:none;
}
JavaScript
var name = document.getElementsByclassName("name");
var tp = document.getElementsByclassName("tooltip");
function show(){
tp.style.display="block";
}
function hide(){
tp.style.display="";
}
【问题讨论】:
-
为什么要使用 JavaScript?纯 CSS 可以工作...
-
查看此链接jqueryui.com/tooltip
-
在纯 js 中我需要使用过渡来使内容停留几秒钟,这对跨浏览器没有帮助
-
我不想要 jQuery 我需要纯 javascript
-
我做到了并在 jsfiddle 中进行了检查,但它不起作用
标签: javascript tooltip