关于医院页面分页的科室排班表

来源:5-12 项目作业

soso_crazy

2019-04-12 15:56:25

<!DOCTYPE html>

<html lang="en">


<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<meta http-equiv="X-UA-Compatible" content="ie=edge">

<link rel="stylesheet" href="../css/分院.css" type="text/css">

<link href="../css/ui.css" type="text/css" rel="stylesheet" />

<title>分院</title>

<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>

</head>


<body>

<div class="top">

<div id="top" class="top">

<div class="wrap">

<p class="call">010-114/116114电话预约</p>

<p class="welcome">欢迎来到城市医院预约挂号统一平台&nbsp;请&nbsp;

<a href="#">登录</a>

<a href="#">注册</a> &nbsp;&nbsp;&nbsp;&nbsp;

<a href="#">帮助中心</a>

</p>

</div>

</div>

</div>


<header>

<div class="wrap">

<a href="#"><img src="../图片素材/logo.png"></a>

<div class="search ui-search">

<div class="ui-search-select">医院</div>

<div class="ui-search-select-list">

<a href="#1" class="search-choice">科室</a>

<a href="#1" class="search-choice">疾病</a>

<a href="#1" class="search-choice">医院</a>

<input type="text" name="search-content" class="ui-search-input" placeholder="请输入搜索内容">

<a href="#" class="ui-search-submit">&nbsp;</a>

</div>

</div>

</div>

</header>


<nav>

<div class="wrap">

<a href="#" class="link">首页</a>

<a href="hospital.html" class="link">按医院挂号</a>

<a href="#" class="link">按科室挂号</a>

<a href="#" class="link">按疾病挂号</a>

<a href="#" class="link">最新公告</a>

<a href="#" class="link right">社会知名医院</a>

</div>

</nav>


<section class="hospital wrap">

<div class="beiH">

<p>

<span>北京协和医院</span><span>关注医院</span>

</p>

<p>

<span>等级:</span><span>三级甲等</span>

<span>区域:</span><span>东城区</span>

<span>分类:</span><span>中国医科所属医院</span>

</p>

</div>


<div class="wrap">

<div class="cover">

<img src="../图片素材/hospital-1.jpg" alt="">

</div>

<div class="detail">

<div class="address">地址:北京市东城区东交民巷1号(西区);北京市东城区崇文门内大街8号(东区)</div>

<div class="web">www.punch.com</div>

<div class="phone">电话:010-1234567</div>

<div class="bus">Lorem ipsum dolor sit amet consectetur adipisicing elit. Et animi blanditiis ipsam eaque, minima molestiae deleniti enim pariatur, dolores quis unde inventore ab molestias eius beatae dolor eveniet error consequatur?</div>

</div>

<div class="map"><img src="../图片素材/map-1.png" alt=""></div>

</div>

</section>


<div class="scheduling wrap">

<div class="caption">科室排班表<a class="back" href="hospital_detail.html">返回科室列表</a></div>

<div class="table clearfix">

<div class="left schedule_main">

<div class="schedule_tool_left">


<div class="date">

<a href="#" class="icon"></a>

</div>

<div class="status">上午</div>

<div class="status">下午</div>

<div class="status">晚上</div>


</div>


<div class="schedule_box">

<div class="schedule_box_wrap clearfix" id="schedule_box_wrap">

</div>

</div>


<div class="schedule_tool_right">


<div class="date">

<a href="#" class="icon"></a>

</div>

<div class="status"></div>

<div class="status"></div>

<div class="status"></div>


</div>

</div>

<div class="right">

<div class="table">

<div class="h3">预约规则</div>

<dl><dt>预约周期:</dt>

<dd> 7天</dd>

</dl>

<dl><dt>放号时间:</dt>

<dd>8:30</dd>

</dl>

<dl><dt>停挂时间:</dt>

<dd>下午14:00停止次日预约挂号 (周五14:00后停挂至下周一)</dd>

</dl>

<dl><dt>退号时间:</dt>

<dd>就诊前一工作日14:00前取消</dd>

</dl>

<dl><dt>特殊规则:</dt>

<dd>

<p><br>①&nbsp; 取号地点不同:西院区预约号取号地点:西院区门诊楼一层大厅挂号窗口取号。东院区预约号取号地点:东院区老门诊楼一层大厅挂号窗口或新门诊楼各楼层挂号/收费窗口取号。<br></p>

<p><br></p>

<p><br></p>

<p><br></p>

<p><br></p>

<p><br></p>

<p><br></p>

</dd>

</dl>

</div>

</div>


</div>

<div class="bottom clearfix"><img src="../图片素材/icon-info.jpg"> 您还没有选择就诊日期</div>

</div>

<!-- 排班表 end -->



<script src="../js/ui-search.js"></script>

<!-- <script src="../js/schedule.js"></script> -->

<script src="../js/doctorSchedule.js"></script>

</body>


</html>


//分院.css

/* 通用设置 */


* {

margin: 0;

padding: 0;

}


.wrap {

margin: 0 auto;

width: 1200px;

position: relative;

}


a {

text-decoration: none;

}


select,

input {

border: none;

/*删除默认样式 点击时没有变化*/

outline: none;

/*删除默认样式 点击时没有变化*/

}


.clearfix {

content: " ";

display: block;

height: 0;

line-height: 0;

clear: both;

zoom: 1;

}



/* top区域 */


.top {

width: 100%;

height: 30px;

background-color: #f5f5f5;

}



/* top区域的左侧电话 */


.top .call {

background: url('../图片素材/icon-call.png') left no-repeat;

color: gray;

height: 30px;

line-height: 30px;

padding-left: 23px;

float: left;

}



/* top区域右侧的链接区域 */


.top .welcome {

float: right;

color: #868686;

height: 30px;

line-height: 30px;

}


.top .welcome a {

color: #2da5e1;

}


.top .welcome a:first-of-type {

padding-left: 27px;

}


.top .welcome a:nth-of-type(2) {

padding-left: 17px;

}


.top .welcome a:last-of-type {

padding-left: 78px;

}


.top .welcome a:first-of-type:hover,

.top .welcome a:nth-of-type(2):hover,

.top .welcome a:last-of-type:hover {

cursor: pointer;

}



/* header区域 */


header {

width: 100%;

height: 93px;

background-color: #ffffff;

}


header img {

width: 354px;

height: 61px;

margin: 18px 0;

}


header .search {

float: right;

width: 328px;

height: 40px;

border-radius: 5px;

background-color: #fecd09;

margin: 30px 0 25px 0;

}



/* nav区域 */


nav {

width: 100%;

height: 36px;

background-color: #2da5e1;

}


nav a {

color: #ffffff;

display: inline-block;

height: 36px;

line-height: 36px;

}


nav a:first-child {

padding-left: 54px;

padding-right: 56px;

}


nav a:nth-of-type(2),

nav a:nth-of-type(3),

nav a:nth-of-type(4),

nav a:nth-of-type(5) {

padding-left: 31px;

}


nav a:last-of-type {

position: absolute;

right: 0;

top: 0;

}



/* 医院介绍区域 */


.hospital {

height: 260px;

margin-top: 31px;

background-color: #EBEBEB;

}



/* 医院介绍的文字标题 */


.hospital .beiH {

padding: 15px;

}


.hospital div:first-child p {

display: inline-block;

}


.hospital div:first-child p:first-child span:nth-of-type(1) {

font-size: 18px;

color: #000000;

padding-right: 12px;

}


.hospital div:first-child p:first-child span:nth-of-type(2) {

font-size: 15px;

color: orange;

}


.hospital div:first-child p:nth-of-type(2) {

position: absolute;

right: 23px;

top: 17px;

}


.hospital div:first-child p:nth-of-type(2) span:nth-of-type(1),

.hospital div:first-child p:nth-of-type(2) span:nth-of-type(3),

.hospital div:first-child p:nth-of-type(2) span:nth-of-type(5) {

color: #4876FF;

padding-left: 13px;

}



/* 医院介绍的图片、文字、地图 */


.hospital div:last-child {

padding: 0 26px;

position: absolute;

}


.hospital .detail {

position: absolute;

width: 644px;

left: 240px;

top: 0;

}


.hospital .detail div {

padding-left: 30px;

padding-bottom: 10px;

}



/* 医院地图 */


.hospital .map {

position: absolute;

right: 50px;

top: 10px;

width: 250px;

height: 170px;

overflow: hidden;

}


.hospital .map img {

width: 250px;

height: 168px;

}



/* 医院的文字介绍地址电话...区域 */


.address,

.web,

.phone,

.bus {

position: relative;

color: #868686;

font-size: 15px;

}


.address::before {

position: absolute;

top: 5px;

left: 5px;

content: '';

width: 16px;

height: 20px;

background: url(../图片素材/icon-web.pn) center no-repeat;

background-position: 0 0;

}


.web::before {

position: absolute;

top: 3px;

left: 5px;

content: '';

width: 16px;

height: 20px;

background: url(../图片素材/icon-web.pn) center no-repeat;

background-position: 0 -20px;

}


.phone::before {

position: absolute;

top: 0px;

left: 5px;

content: '';

width: 16px;

height: 20px;

background: url(../图片素材/icon-web.png) center no-repeat;

background-position: 0 -40px;

}


.bus::before {

position: absolute;

top: 0px;

left: 5px;

content: '';

width: 16px;

height: 20px;

background: url(../图片素材/icon-web.png) center no-repeat;

background-position: 0 -60px;

}



/* 科室排班列表 */


.scheduling {

padding-bottom: 60px;

margin-top: 20px;

margin-bottom: 50px;

}


.scheduling .caption {

line-height: 50px;

text-indent: 10px;

}


.scheduling .caption .back {

font-size: 14px;

color: #00B3EC;

margin-left: 16px;

}


.scheduling .table {}


.scheduling .left {

width: 930px;

height: 324px;

float: left;

font-size: 12px;

}


.schedule_box_wrap,

.schedule_box {

width: 858px;

height: 324px;

float: left;

position: relative;

/*background-color: #ccc;*/

}


.schedule_box {

overflow: hidden;

}


.schedule_box_wrap {

width: 99999px;

transition: all 1s;

}


.schedule_box_wrap {

position: absolute;

left: 0;

top: 0;

}


.schedule_box_item {

width: 95px;

height: auto;

float: left;

}


.schedule_main {

text-align: center;

border-bottom: 1px solid #dcdddd;

position: relative;

}


.schedule_main .date {

color: #868686;

background: #f8fafc;

line-height: 18px;

height: 36px;

padding: 4px 0;

width: 94px;

border: 1px solid #dcdddd;

border-bottom: none;

border-right: none;

}


.schedule_main .status {

background: #fff;

width: 94px;

height: 92px;

line-height: 90px;

border: 1px solid #dcdddd;

border-bottom: none;

border-right: none;

cursor: pointer;

}


.schedule_main .schedule_box_item .status_full {

/*background-color: #fafafa;*/

background: #e0eefd;

cursor: pointer;

color: #4ab4ed;

}


.schedule_tool_right,

.schedule_tool_left {

width: 38px;

height: 324px;

float: left;

z-index: 2;

/*background-color: red*/

}


.schedule_main .schedule_tool_left .date,

.schedule_main .schedule_tool_right .date {

width: 100%;

line-height: 36px;

background-color: #fff;

}


.schedule_main .schedule_tool_left .status,

.schedule_main .schedule_tool_right .status {

width: 100%;

background-color: #f2f8ff;

}


.schedule_main .schedule_tool_left .status,

.schedule_main .schedule_tool_right .status {

border-top-color: #f2f8ff;

}


.schedule_main .schedule_tool_right {

position: absolute;

right: 1px;

top: 0;

}


.schedule_main .schedule_tool_right .status {

border-left: 1px solid #dcdddd

}


.schedule_tool_left .icon {

display: inline-block;

width: 32px;

height: 36px;

background: url(../图片素材/icon-scheduling-left.jpg) no-repeat -2px -6px;

}


.schedule_tool_right .icon {

display: inline-block;

width: 32px;

height: 36px;

background: url(../图片素材/icon-scheduling-right.jpg) no-repeat -2px -6px;

}



/*右侧内容*/


.scheduling .right {

width: 270px;

height: 324px;

float: right;

}


.scheduling .right .table {

border: 1px solid #dcdddd;

}


.scheduling .right .table {

padding: 10px 5px 10px 10px;

overflow: auto;

height: 303px;

border: 1px solid #dcdddd;

line-height: 18px;

}


.scheduling .right .table .h3 {

line-height: 40px;

}


.scheduling .right .table dl {

font-size: 12px;

padding-bottom: 5px;

color: #888;

overflow: hidden;

}


.scheduling .right .table dt {

display: inline-block;

font-size: 12px;

color: #555;

float: left;

width: 68px;

}


.scheduling .right .table dd {

display: inline-block;

float: left;

font-weight: normal;

width: 170px;

}


.scheduling .bottom {

color: #9f9f9f;

font-size: 16px;

height: 64px;

line-height: 64px;

text-align: center;

border: 1px solid #dcdddd;

border-top: none;

}


.scheduling .bottom img {

vertical-align: middle;

}


//ui.css

/* 搜索 */


.ui-search {

background: url(../图片素材/ui-search.jpg) center no-repeat;

font-size: 14px;

color: #fff;

position: relative;

}


.ui-search-select {

width: 70px;

height: 40px;

line-height: 40px;

position: absolute;

/*根据ui-search浮动*/

left: 0;

top: 0;

text-indent: 14px;

}


.ui-search-select-list {

display: none;

position: absolute;

width: 67px;

line-height: 24px;

background-color: #fff;

box-shadow: 3px 3px 5px rgba(0, 0, 0, .2);

left: 2px;

top: 39px;

z-index: 2;

}


.ui-search-select-list a {

display: block;

color: #A5a2a2;

text-align: center;

letter-spacing: .2em;

}


.ui-search-select-list a:hover {

background-color: #ebeef5;

}


.ui-search-input {

width: 208px;

height: 26px;

position: absolute;

top: -35px;

left: 73px;

line-height: 26px;

font-size: 13px;

color: #A5A2A2;

}


.ui-search-submit {

display: block;

position: absolute;

right: -260px;

top: -35px;

width: 40px;

height: 36px;

}


//js

$(document).ready(function() {

var week = "",

day = new Date().getDate(),

year = new Date().getFullYear(),

month = new Date().getMonth(),

weekend = new Date().getDay(),

pageCount = 10,

page = 0;

allScheduleDay = pageCount * 10;


month = month < 10 ? '0' + month : month;

day = day < 10 ? '0' + day : day;


switch (weekend) {

case 0:

week = "星期日";

break;

case 1:

week = "星期一";

break;

case 2:

week = "星期二";

break;

case 3:

week = "星期三";

break;

case 4:

week = "星期四";

break;

case 5:

week = "星期五";

break;

case 6:

week = "星期六";

break;

}


// 添加元素到html中

for (var i = 0; i < allScheduleDay; i++) {

$('#schedule_box_wrap').append('<div class="schedule_box_item"><div class="date">' + week + '<br>' + year + '-' + month + '-' + day + '</div><div class="status"></div><div class="status status_full">约满</div><div class="status"></div></div>');

}


// 点击按钮

var width = 0;


$('#schedule_box_wrap').on('moveLeft', function() {

$('#schedule_box_wrap').css('left', width + 455 + 'px');

});


$('#schedule_box_wrap').on('moveRight', function() {

$('#schedule_box_wrap').css('left', width - 455 + 'px');

});


$('.schedule_tool_left .icon').on('click', function() {

if (page > 0 && page <= pageCount) {

page -= 1;

$('#schedule_box_wrap').triggerHandler('moveLeft');

}

return false;

});


$('.schedule_tool_right .icon').on('click', function() {

if (page <= pageCount) {

page += 1;

$('#schedule_box_wrap').triggerHandler('moveRight');

}

return false;

});

});

  1. 老师,科室排班表的显示日期如何不是统一显示当天?

  2. 向左向右滑动的left值应该如何设置,思路是怎样的可以说一下吗?

写回答

1回答

好帮手慕糖

2019-04-12

同学你好,这里可以通过循环设置哦,之后没多一天就加1即可。整体可以参考如下:例:

(1)    先定义一个数组,将7天对应的星期几的都先写好。

(2)    作业要求是输入今天即当前日后之后的7个星期的排班。所以我们一共要计算7*7=49天

(3)    通过new date获取当前日期

(4)    当前日期+1天(可通过毫秒数计算),但我们需要的结果是年月日,所以将+1后的值通过new Date转化、然后在通过getDay()、getFullYear()、getMonth()获取符合我们常识的年月日。

(5)    从定义的数组中,取出对应的星期数

(6)    向页面中插入数据,插入数据的同时,还可以将包含数据的节点一起生成、插入dom中。可以不使用表格展示,div元素也可以的

(7)    以上为一天(即一个上午、下午、晚上、头部日期)的结构。循环49次即可

(8)    由于展示值班表的大盒子设置了超出部分隐藏、所以只会显示7天的情况。鼠标单击向后或者向前、动态改变left值或right值了。

希望能帮助到你,祝学习愉快!

0

0 学习 · 14456 问题

查看课程