JSFiddle - React, Tailwind, and code Playground
by wllai2001
HTML
<div class="tooltip" onmouseover="showTooltip(this)">
Hover over me
</div>
<div class="tooltip" onmouseover="showTooltip(this)">
Hover over me
</div>
<div class="tooltip" onmouseover="showTooltip(this)">
Hover over me
</div>
<div class="tooltip" onmouseover="showTooltip(this)">
Hover over me
</div>
<div class="tooltip" onmouseover="showTooltip(this)">
Hover over me
</div>
<div class="tooltip" onmouseover="showTooltip(this)">
Hover over me
</div>
<div class="tooltip" onmouseover="showTooltip(this)">
Hover over me
</div>
<div class="tooltip" onmouseover="showTooltip(this)">
Hover over me
</div>
CSS
.tooltip {
position: relative;
cursor: pointer;
}
.tooltip .tooltiptext {
visibility: hidden;
width: 120px;
background-color: #555;
color: #fff;
text-align: center;
border-radius: 6px;
padding: 5px 0;
position: absolute;
z-index: 1;
bottom: 125%;
left: 50%;
margin-left: -60px;
opacity: 0;
transition: opacity 0.3s;
}
.tooltip:hover .tooltiptext {
visibility: visible;
opacity: 1;
}
JavaScript
function showTooltip(element) {
var spans = element.querySelectorAll('span');
// 循环遍历并删除每个 <span> 元素
spans.forEach(function(span) {
span.parentNode.removeChild(span);
});
// 创建 tooltip 内容
var tooltipContent = document.createElement('span');
tooltipContent.className = 'tooltiptext';
tooltipContent.textContent = element.textContent; // 这里设置 tooltip 的内容
// 将 tooltip 内容添加到 DOM 中
element.appendChild(tooltipContent);
// 设置 tooltip 的位置(可选)
tooltipContent.style.top = '-' + tooltipContent.offsetHeight + 'px';
}