zoukankan      html  css  js  c++  java
  • 会议管理拖动效果的页面制作1

    记得几个月前,曾经做过会议室预定显示、预定的功能,但是当时是一个彻彻底底小白,啥都不会,别人好的效果也做不出来。近日来通过对jquery和javascript的学习,照样画葫芦的模仿了那个效果。

    先贴张别人的效果图

    我的思路是这样的,当鼠标点击td时,条件判断设为true同时获得该td,然后拖动时,获得鼠标最后停留的td,最后将这两者之间的td(也就是选中的td)背景色变化。

    另外想说句,jquery是个好东西,很好很强大,附上总体代码

    html代码

    View Code
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <script src="jquery-1.7.2.js" type="text/javascript"></script>
    <script src="hyxz.js" type="text/javascript"></script>
    <style type="text/css">
       *{ margin:0; padding:0}
       #hy_content,#hy_head{ overflow:hidden; width:1000px;}
       #hy_head td{ width:80px; text-align:center; border:1px black solid;}
       th{ width:100px; border:1px black solid}
       #hy_content td{width:19px; background:green; height:30px; padding:0; margin:0}
       #hy_content td:hover{width:19px; background:red; height:30px;}
        </style>
         <script type="text/javascript">
          $(function () { 
          $("#hy_content tr").hytd();
             })
         </script>
    </head>
    
    <body>
    <div>
        <div id="head">
         <div id="xzhys_all" style=" position:relative; left:150px;top:0px;">
         <span>选择会议室</span>
         <select id="xzhys">
            <option selected="selected">选择会议室</option>       
         </select>
         <div style=" position:absolute; left:300px;  top:0px">
          <span>日期:</span>
          <select id="rq">
            <option selected="selected">2013/4/16</option>       
         </select>
         </div>
         </div>
         
        </div>
        <div id="content">
        <table id="hy_head">
          <tr>
          <th>哈哈</th>
          <td>7</td><td>8</td><td>9</td><td>10</td><td>11</td><td>12</td><td>13</td><td>14</td><td>15</td><td>16</td><td>17</td>
          </tr>
        </table>
        <table id="hy_content">
          <tr id="hy1">
           <th>会议室1</th>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
          </tr>
          <tr id="hy2">
           <th>会议室2</th>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
          </tr>
          <tr id="Tr1">
           <th>会议室3</th>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
          </tr>
          <tr id="Tr2">
           <th>会议室4</th>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
              <td class="style1"></td><td class="style1"></td><td class="style1"></td><td class="style1"></td>
          </tr>
        </table>
        </div>
        </div>
    </body>
    </html>

    处理拖动时效果的js代码

    View Code
    (function ($) {
        $.fn.hytd = function () {
            return this.each(function () {
                var moveable = false
                var items = []; //建立数组items来存储td对象
                var items_positon = [];
                var obj_moveover = null;
                var i_begin = null;
                var i_end = null;
                var t = $(this); _t = this;
                function getitems() {
                    t.find("td").each(function () {
                        var pos = {};
                        pos.obj = this;
                        pos.left = $(this).offset().left;
                        pos.top = $(this).offset().top;
                        items_positon.push(pos);
                    })
                }
                function _mousedown(e) {
                    e = e || window.event;
                    i_end = null;
                    var mouse_left = e.pageX;
                    for (var i = 0; i < items_positon.length; i++) {
                        if (mouse_left > items_positon[i].left) { i_begin = i; }
                    }
                    moveable = true;
                }
                function _mouseup(e) {
                    e = e || window.event;
                    moveable = false;
                }
                function mousemoveobj(e) {
                    e = e || window.event;
    
    
                    if (moveable) {
                        var mouse_left = e.pageX;
                        for (var i = 0; i < items_positon.length; i++) {
                            if (mouse_left > items_positon[i].left) {
                                //obj_moveover = items_positon[i]; obj_moveover1 = items_positon[i + 1];
                                i_end = i;
                            }
    
                        }
                    }
                    if (i_end != null) {
                        for (var i = 0; i < items_positon.length; i++) {
                            if ((i < i_end && i > i_begin) || (i > i_end && i < i_begin) || (i == i_begin && i_begin != i_end)) { $(items_positon[i].obj).css('background', 'yellow'); }
                            else { $(items_positon[i].obj).css('background', 'green'); }
                        }
                    }
                }
                var getobj_x = function (obj) {
                    var ret = 0;
                    while (obj != null) {
                        ret += obj.offsetLeft;
                        obj = obj.offsetParent;
                    }
                    return ret;
                }
    
                function init() {
                    getitems();
                    t.find("td").bind('mousedown', _mousedown).bind('mousemove', mousemoveobj);
                    $(document).bind('mouseup', _mouseup);
                }
                init();
            })
        }
    })(jQuery);

     jquery我用的是1.7.2

    写这个一方面说明了这几天javascript和jquery不是白学,同时还能加深印象,最重要的一点是若能有大神看到,顺带指点我这个超级小白一二,那岂不美哉!小白先撤做后台代码去。

  • 相关阅读:
    二分练习题4 查找最接近的元素 题解
    二分练习题5 二分法求函数的零点 题解
    二分练习题3 查找小于x的最大元素 题解
    二分练习题2 查找大于等于x的最小元素 题解
    二分练习题1 查找元素 题解
    code forces 1176 D. Recover it!
    code forces 1173 B. Nauuo and Chess
    code forces 1173 C. Nauuo and Cards
    吴恩达深度学习课程笔记-15
    吴恩达深度学习课程笔记-14
  • 原文地址:https://www.cnblogs.com/bobogoodgoodstudy/p/3026145.html
Copyright © 2011-2022 走看看