javascript - 鼠标悬停时显示/隐藏 div

标签 javascript html

JavaScript:

$( document ).ready(function() {
    function show(id) {
        document.getElementById(id).style.visibility = "visible";
    }
    function hide(id) {
        document.getElementById(id).style.visibility = "hidden";
    }
});

和 HTML:

<table>
    <tr>
        <td id="one">
                <div class="content" onMouseOver="show('text')"  onMouseOut="hide('text')">
                    <h1>Heading</h1>
                    <p id="text">Lorem ipsum</p>
                </div>
            </div>
        </td>
</table>

Lorem ipsum 应该在鼠标悬停在 content div 上时显示,但它不起作用。它被封装在表格中,因为还有其他三个内容 div 构成了 2 x 2 网格。

最佳答案

show 不在全局对象上,它位于闭包中,因此当您的 HTML 事件处理程序尝试调用它时,它不存在。

使用CSS代替

#text {
    visibility: hidden;
}

.content:hover #text {
    visibility: visible;
}

关于javascript - 鼠标悬停时显示/隐藏 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30928581/

相关文章:

javascript - 如何防止元素脱离 DOM 错误?

javascript - 使 jqGrid 多选选择在分页、工具栏搜索或过滤器之后持续存在

html - 底部的 Div 高度动画方向问题

javascript - 如何获取单选按钮后的文本

html - 如何在计算机屏幕上模拟灰白色纸张的外观

java - 如何将对象从 Controller 传递到jsp页面,然后迭代该对象以将它们显示在表格中?

javascript - AngularJS 自定义指令未加载

javascript - 如何在 React JS 中选择性地启用/禁用表格中的按钮?

javascript - 如何通过jQuery获取客户端分配或设置的标签值

html - 使用本地版本时丢失 BootStrap 格式