• JS 将table内未显示完全内容显示完全


    非原创,来源网络

    @* 单元格显示详情 *@
    
    <style>
        #showbox {
             150px;
            min-height: 50px;
            font: 100 14px/1 "微软雅黑";
            border: 1px solid #3c8dbc;
            display: none;
            position: absolute;
            top: 0;
            left: 0;
            background-color: #fff;
            padding: 5px;
        }
    </style>
    <div id="showbox"></div>
    <script type="text/javascript">
        $(function () {
            function showBox(obj, box) {
                var timer = null;
                $(obj).on("mouseover", function (e) {
                    clearTimeout(timer);
                    var clientX = e.clientX;
                    var clientY = e.clientY;
                    var txt = $(this).text();
                    timer = setTimeout(function () {
                        console.log(clientX, clientY);
                        $(box).css("left", clientX).css("top", clientY);
                        if (txt == "") {
                            $(box).hide();
                        } else {
                            $(box).show();
                            $(box).html(txt);
                        }
                    }, 1000);
                });
                $(obj).on("mouseout", function () {
                    clearTimeout(timer);
                    $(box).hide();
                });
            }
            showBox("#TargetControl > tbody td", "#showbox");//targetControl为需要显示完全的目标单元格
        });
    </script>

    上述代码可以全部整合到JS中;其调用可直接放在网页最后或放在onload中。

    小子将css与div整合到JS中后如下,这样调用将更加方便,而不用再在页面中添加div与需要的css

    <script type="text/javascript">
        $(function () {
            var d = document.createElement('div');
            d.id = "showbox";
            d.style.cssText = " 150px; min-height: 50px;font: 100 14px/1 '微软雅黑';border: 1px solid #3c8dbc;display: none;position: absolute; top: 0; left: 0;background-color: #fff;padding: 5px;";
            document.body.appendChild(d);
    
            function showBox(obj, box) {
                var timer = null;
                $(obj).on("mouseover", function (e) {
                    clearTimeout(timer);
                    var clientX = e.clientX;
                    var clientY = e.clientY;
                    var txt = $(this).text();
                    timer = setTimeout(function () {
                        console.log(clientX, clientY);
                        $(box).css("left", clientX).css("top", clientY);
                        if (txt == "") {
                            $(box).hide();
                        } else {
                            $(box).show();
                            $(box).html(txt);
                        }
                    }, 1000);
                });
                $(obj).on("mouseout", function () {
                    clearTimeout(timer);
                    $(box).hide();
                });
            }
            showBox("#tableResult > tbody td", "#showbox");//tableResult为需要完全显示的table ID
        });
    </script>

     另外注意一下,此需要引入jquery2.1.4  小子试了下,引入更高版本的Jquery会出现未知问题,目前此还未解决。

  • 相关阅读:
    程序员到底该怎么给女朋友挑礼物
    漫说测试 | 研发虐我千百遍,我待bug如初恋
    知识是有价值的
    如何防止ASP.NET网站遭受CSRF的攻击
    如何让ASP.NET网站站点不停止 永远持续运行
    在ASP.NET MVC中验证checkbox 必须选中 (Validation of required checkbox in Asp.Net MVC)
    SOA和Web Service介绍
    ASP.NET网站如何显示自己的网页图标
    ASP.NET(C#)中的try catch异常处理机制
    Session.Abandon, Session.Clear和Session.Remove的区别
  • 原文地址:https://www.cnblogs.com/chengcanghai/p/13870415.html
Copyright © 2020-2023  润新知