zoukankan      html  css  js  c++  java
  • html中使用js实现内容过长时部分

    有时数据内容太长时我们并不希望其全部显示出来,因为这样可能会导致用于显示这些内容的标签被撑开影响美观。

    这时就希望能够实现默认只显示部分内容,在鼠标放上去的时候再将全部的内容显示出来。

    这里提供一个简单的实现方法,通过将全部内容放在单独一个标签中,通过控制这个标签的显示与隐藏实现此效果。

    html页面中创建一个table,用于存放默认的数据,在需要显示更多数据的td中新建一个div用于显示所有数据(可以放在任何期望的位置)。

    这里通过样式控制此div的显示与隐藏。

    <html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
        <title>过长内容隐藏</title>
            <style type="text/css">
                td{
                    width:200px;
                    border:1px solid #000;
                }
                .fullData{
                    display:none;
                }
                #userDesp:hover .fullData{
                    position:absolute;
                    display:block;
                    cursor:hand;
                    word-break: break-all;
                    width:200px;
                    background-color: rgba(0,0,0,0.5);
                    color:#fff
                }
            </style>
    </head>
    <body>
    <table>
        <tr>
            <td>用户名</td>
            <td>简介</td>
        </tr>
        <tr>
            <td>userName</td>
            <td id="userDesp">
                鼠标置于此查看详情
                <div class="fullData">
                    这时用户简介,比较长,所以把其他内容给隐藏了,鼠标放上来就能看见了哦。
                </div>
            </td>
        </tr>
    </table>
    </body>
    </html>

    如果需要js控制显示与隐藏,可以使用onmouseover和onmouseout这两个事件。

    给td中添加这两个事件,

    <td onmouseover="showDetails(this)" onmouseout="closeDetails(this)">
                鼠标置于此查看详情
                <div style="display:none">
                    这时用户简介,比较长,所以把其他内容给隐藏了,鼠标放上来就能看见了哦。
                </div>
    </td>

    然后在js部分写上需要控制的div的样式。

    <script type="text/javascript">
            function showDetails(o){
                o.getElementsByTagName("div").item(0).style.cssText = "position:absolute; display:block;cursor:hand; word-break: break-all;200px;background-color: rgba(0,0,0,0.5);color:#fff";
            }
    
            function closeDetails(o){
                o.getElementsByTagName("div").item(0).style.cssText = "display:none";
            }
    </script>

    这样就可以实现简单的隐藏与显示了。

  • 相关阅读:
    基于Docker的Mysql主从复制搭建
    Docker操作命令——查看、停止、删除容器
    Git命令
    未定义数组下标: 0
    zookeeper-3.4.14单机多端口集群搭建
    使用MAT分析dump文件定位程序问题
    intellij idea2019.1中文破解版安装
    vscode打造golang开发环境
    python项目开发环境模块安装记录
    shell用法
  • 原文地址:https://www.cnblogs.com/Faquir/p/5807322.html
Copyright © 2011-2022 走看看