Sfoglia il codice sorgente

厦门i健康患者端代码拷贝

raolu 7 anni fa
parent
commit
4bb287e330
79 ha cambiato i file con 20315 aggiunte e 0 eliminazioni
  1. 74 0
      html/grzx/css/change-login.css
  2. 73 0
      html/grzx/css/clip-photo.css
  3. 580 0
      html/grzx/css/dd-style.css
  4. 150 0
      html/grzx/css/home.css
  5. 70 0
      html/grzx/css/my-detail.css
  6. 63 0
      html/grzx/css/shenfenyanzheng.css
  7. 5618 0
      html/grzx/css/sq-style.css
  8. 67 0
      html/grzx/css/style.css
  9. 3544 0
      html/grzx/css/wy-style.css
  10. 3338 0
      html/grzx/css/zx-style.css
  11. 131 0
      html/grzx/html/add-equipment.html
  12. 403 0
      html/grzx/html/bangdingsj.html
  13. 82 0
      html/grzx/html/change-login.html
  14. 45 0
      html/grzx/html/delete-equipment.html
  15. 180 0
      html/grzx/html/edit-equipment.html
  16. 157 0
      html/grzx/html/equipment-detail.html
  17. 238 0
      html/grzx/html/my-appointment.html
  18. 182 0
      html/grzx/html/my-detail.html
  19. 120 0
      html/grzx/html/my-doctor-advice.html
  20. 48 0
      html/grzx/html/my-equipments.html
  21. 61 0
      html/grzx/html/my-health-card.html
  22. 105 0
      html/grzx/html/set-remind-2.html
  23. 270 0
      html/grzx/html/shenfenyz.html
  24. 195 0
      html/grzx/html/shezhimima.html
  25. 139 0
      html/grzx/html/xiugaidizhi.html
  26. BIN
      html/grzx/images/bc.jpg
  27. BIN
      html/grzx/images/dianzijiankangka_img.png
  28. BIN
      html/grzx/images/drugs1-a.png
  29. BIN
      html/grzx/images/drugs1-b.png
  30. BIN
      html/grzx/images/drugs1-c.png
  31. BIN
      html/grzx/images/drugs2-a.png
  32. BIN
      html/grzx/images/drugs2-b.png
  33. BIN
      html/grzx/images/drugs2-c.png
  34. BIN
      html/grzx/images/drugs3-a.png
  35. BIN
      html/grzx/images/drugs3-b.png
  36. BIN
      html/grzx/images/drugs3-c.png
  37. BIN
      html/grzx/images/drugs4-a.png
  38. BIN
      html/grzx/images/drugs4-b.png
  39. BIN
      html/grzx/images/drugs4-c.png
  40. BIN
      html/grzx/images/drugs5-a.png
  41. BIN
      html/grzx/images/drugs5-b.png
  42. BIN
      html/grzx/images/drugs5-c.png
  43. BIN
      html/grzx/images/ewm.png
  44. BIN
      html/grzx/images/fangda_icon.png
  45. BIN
      html/grzx/images/gouxuan_icon_btn.png
  46. BIN
      html/grzx/images/hospital-img.png
  47. BIN
      html/grzx/images/jiatingqianyue@2x.png
  48. BIN
      html/grzx/images/jiatingqianyue@3x.png
  49. BIN
      html/grzx/images/jiatingweiqianyue@2x.png
  50. BIN
      html/grzx/images/jiatingweiqianyue@3x.png
  51. BIN
      html/grzx/images/report-img1.png
  52. BIN
      html/grzx/images/report-img3.png
  53. BIN
      html/grzx/images/sanshiqianyue@2x.png
  54. BIN
      html/grzx/images/sanshiqianyue@3x.png
  55. BIN
      html/grzx/images/sanshiweiqianyue@2x.png
  56. BIN
      html/grzx/images/sanshiweiqianyue@3x.png
  57. BIN
      html/grzx/images/solvebg.png
  58. BIN
      html/grzx/images/star-off.png
  59. BIN
      html/grzx/images/star-on.png
  60. BIN
      html/grzx/images/suoxiao_icon.png
  61. BIN
      html/grzx/images/yp1.jpg
  62. BIN
      html/grzx/images/yp2.jpg
  63. BIN
      html/grzx/images/yp3.jpg
  64. BIN
      html/grzx/images/yp4.jpg
  65. 2 0
      html/grzx/js/1.chunk.js
  66. 2 0
      html/grzx/js/2.chunk.js
  67. 296 0
      html/grzx/js/alloy_crop.js
  68. 210 0
      html/grzx/js/alloy_finger.js
  69. 263 0
      html/grzx/js/change-login.js
  70. 248 0
      html/grzx/js/clip_photo.js
  71. 123 0
      html/grzx/js/del-my-equipments.js
  72. 2038 0
      html/grzx/js/iscroll-probe.js
  73. 163 0
      html/grzx/js/iscroll-pull-up-down.js
  74. 3 0
      html/grzx/js/lrz.all.bundle.js
  75. 455 0
      html/grzx/js/my-detail.js
  76. 108 0
      html/grzx/js/my-doctor-advice.js
  77. 108 0
      html/grzx/js/my-equipments.js
  78. 189 0
      html/grzx/js/select-committee.js
  79. 174 0
      html/grzx/js/transform.js

+ 74 - 0
html/grzx/css/change-login.css

@ -0,0 +1,74 @@
@charset "utf-8";
.tips {
	font-size: 13px;
	background-color: #ffffcc;
}
.tips a {
	color: #03a9f4;
	text-decoration: underline;
}
.n-list {
	border: 1px solid #DCDCDC;
	margin: 0 10px;
	border-radius: 10px;
}
.family-list li {
	margin-top: 10px;
}
.family-list .n-list-key {
	margin: 12px 0;
}
.family-list .n-list .checked {
	display: none;
}
.family-list .n-list.on .checked {
	display: -webkit-box;
    display: -moz-box;
    display: box;
}
.family-list h2 {
	font-weight: bold;
	color: #323232;
	font-size: 16px;
}
.family-list .n-list-info p {
	margin-top: 10px;
	line-height: 18px;
	color: #909090;
	font-size: 14px;
}
.icon-checked {
	display: inline-block;
	width: 30px;
	height: 30px;
	background-image: url(../images/gouxuan_icon_btn.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
.icon-add {
	display: inline-block;
	width: 30px;
	height: 30px;
	background-image: url(../images/tianjia_jiaren_icon.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
.family-list .list-last {
	display: -webkit-box;
    display: -moz-box;
    display: box;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    box-orient: vertical;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    box-pack: center;
	height: 80px;
	border-style: dashed;
}
.family-list .list-last p {
	color: #dedede;
	font-size: 12px;
}

+ 73 - 0
html/grzx/css/clip-photo.css

@ -0,0 +1,73 @@
#clipPanel{
    width: 100%;
    height: 100%;
}
.clip-img{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    width: 100%;
    height: 100%;
    margin: 0;
}
.clip-img img{
    position: absolute;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}
#clip{
    position: absolute;
    z-index: 100;
    /*border: 1px solid #ccc;*/
    outline: rgba(0, 0, 0, 0.8) solid 1000px;
}
nav{height: 40px;}
nav > div:first-child{
    border-right: 1px solid #cbcbcb;
}
.header{
    width: 100%;
    height: 40px;
    line-height: 40px;
    position: fixed;
    background-color: #fff;
    z-index: 999;
}
.header-link-l,
.header-link-r{
    position: absolute;
    top:0;
}
.header-link-l{
    left: 10px;
}
.header-link-r{
    right: 10px;
}
.header-link-l a,
.header-link-r a{
    color: #74bf00;
}
.save-btn{
    z-index: 9;
    position: absolute;
    top: 10px;
    right: 10px;
    border: none;
    background-color: #fff;
    border: 1px solid #ccc;
    width: 50px;
    height: 30px;
}
.bgc-000{
    background-color: #000;
}
.c-a8{
    color: #A8A8A8;
}

File diff suppressed because it is too large
+ 580 - 0
html/grzx/css/dd-style.css


+ 150 - 0
html/grzx/css/home.css

@ -0,0 +1,150 @@
@charset "utf-8";
body {background-color: #f3f3f3;}
.pt40 { padding-top: 40px;}
.ui-col-1 { width: 0;}
.c-17b3ec {color: #17b3ec;}
.c-btn-17b3ec {background-color: #17b3ec;}
.c-ser-hold {background: none;}
.icons-zero { width: 60px; height: 60px;}
.icons-one {width: 45px;}
.icons-two {width: 35px;}
.arrow-right { display: block;width: 8px; height: 8px; border: solid #cdcdcd; border-width: 2px 2px 0 0; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg);-ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); }
.ren {width: 52px;}
.index-list .c-list-img , .index-list .c-list-img img {width: 70px; height: 50px;}
.index-tags {display: inline-block; padding: 1px 5px; color: #fff; border-radius: 2px;}
.index-tags-org {background-color: #ff8100;}
.index-tags-blue {background-color: #75c2f5;}
.index-list .c-list > li {margin-left: 0;}
.index-list .doc-avatar { width: 50px; height: 50px; border-radius: 50%; overflow: hidden; margin-right: 20px;}
.index-list .c-list > .c-list-function { border-top: 1px solid #f1f1f1;}
.index-list .c-list > .c-list-function .c-list-info,.index-list .c-list > .c-list-function:first-child { border: 0;}
.c-list .doc-avatar img { width: 100%; height: 100%;}
.wordbox {position: relative;}
.wordbox-box {position: absolute; text-align: center; word-wrap: break-word; overflow: hidden; border: 1px solid #fff;}
.wordbox-box span {color: #fff; text-decoration: none; display: inline-block; width: 100%; height: 100%;}
.icons-box {border-radius: 2px; width: 26px; height: 26px; color: #fff; display: inline-block; text-align: center; line-height: 26px;}
.icons-box i.iconfont {font-size: 18px;}
.icons-box-org {background-color: #ff9600;}
.icons-box-blue {background-color: #00aeef;}
.icons-box-green {background-color: #4ed964;}
/* login */
.login .ui-grid {height: 45px; line-height: 25px;}
.login .ui-grid:first-child {border-bottom: 1px #f1f1f1 solid;}
.login .ui-col-0 {width: 50px; border-right: 1px solid #f1f1f1;}
.login .ui-col-0 span { color: #17b3ec; display: inline-block; height: 100%; }
/* footer */
.footer {background-color: #f8f8f9; left: 0; bottom: 0; height: 50px; padding-top: 5px; z-index:600;}
.footer li {position: relative;}
.footer li em {position: absolute; left: 50%; top: -2px; width: 18px; height: 18px; color: #fff; border-radius: 50%;  background-color: #f00; margin-left: 3px;}
.footer a {color: #333;}
.footer a.curr {color: #17b3ec;}
.footer i.iconfont {font-size: 20px;}
.footer span {display: block; font-size: 10px;}
/*资讯*/
.canbel-head ul{margin:0 auto;border-radius:5px;}
.message-list .c-avatar-m{border-radius:40px;overflow:hidden;color:#fff;text-align:center;line-height:40px;}
.message-list .c-avatar-m i{font-size:23px;}
.message-list span.dot-red{background:#37a6ed;width:22px;height:22px;display:inline-block;color:#fff;font-size:10px;text-align:center;line-height:22px;border-radius:50%;}
.message-list.c-list .c-list-info > p{color:#5b5b5b;font-size:12px;}
.bgc-4ba8ef{background:#4ba8ef;}
.bgc-ffa100{background:#ffa100;}
.bgc-00cf8d{background:#00cf8d;}
.bgc-ff6000{background:#ff6000;}
.index-top{ line-height:40px; padding:0 15px 0 10px; font-size:16px; color:#494949;}
.index-top img{ margin-top:10px;}
.bor-l-f2{ border-left:1px solid #f2f2f2;}
.bor-t-f2{ border-top:1px solid #f2f2f2;}
.c-b3b3b3{ color:#b3b3b3;}
.dh-nav { width: 100%; height: 30px; line-height:30px; background: #fff; font-size:13px;}
.dh-nav li{ display:block; float:left; width:20%; height:22px; padding-top:8px; text-align:center;}
.dh-nav li.curr{ background:#25aadf; color:#fff;}
.dh-nav li span{ display:block; width:100%; line-height:1; box-sizing:border-box; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; border-left:1px solid #f2f2f2;}
.dh-nav li:first-child span{ border-left:none;}
.dh-nav li.curr span{ border-color:#25aadf;}
.dh-list { width:100%; background:#fff; z-index:1;}
.dh-list-box { width: 100%; }
.dh-list li{ overflow:hidden; padding:15px 0 5px 0; font-size:14px; color:#333;}
.dh-list li label{ display:block; width:25%; float:left; text-align:center; margin-bottom:10px; line-height:1.3; font-size:14px;}
.dh-list li label img{ width:40px; height:40px; border-radius:50%; margin-bottom:3px;}
.index-banner{ position:relative;}
.index-banner-word{ position:absolute; width:100%; text-align:center; left:0; bottom:20px; font-size:13px; color:#fff;}
.index-nav{ position:relative;}
.index-nav li{ display:block; float:left; width:31.25%; height:130px; text-align:center; font-size:14px; color:#5b5b5b; line-height:1.4; position:relative; z-index:500;}
.index-nav:before{ content:''; display:block; width:31.25%; height:100%; position:absolute; left:31.25%; border-left:1px solid #f2f2f2; border-right:1px solid #f2f2f2; top:0; box-sizing:border-box; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; z-index:1;}
.index-nav li.lthree{ width:37.5%;}
.three-div-top{ height:60px; border-bottom:1px solid #f2f2f2; padding-top:5px;}
.three-div-bot{ height:70px; padding-top:15px;}
.three-img{}
.three-span{ display:inline-block; vertical-align:middle; margin-top:3px; margin-left:2px; text-align:left;}
.search-tb{ width:45px; height:45px; position:absolute; right:0; top:0;}
.search-tb:before{ content:''; display:block; position:absolute; width:12px; height:12px; border:1px solid #49bdee; border-radius:50%; left:13px; top:15px;}
.search-tb:after{ content:''; display:block; position:absolute; width:10px; height:1px; background:#49bdee; left:23px; top:30px; transform:rotate(45deg); -webkit-transform:rotate(45deg);}
.news-list li { padding-top: 12px; padding-bottom: 12px; }
.news-pic { width: 60px; height: 60px; border-radius: 4px; overflow: hidden; }
.news-pic img { width: 100%; height: 100%; }
.pull-more { display: block; text-align: center; color: #5b5b5b; font-size: 14px; padding: 10px 0; }
.pull-more:active { background: rgba(0,0,0,.05); }
.art-detil { padding: 15px; }
.art-detil h1 { font-size: 18px; line-height: 30px; color: #333; }
.art-detil a { color: #137bf2; }
.art-detil img { max-width: 100%; display: block; margin: 10px auto; }
.art-con p { color: #666; font-size: 14px; line-height: 1.5em; padding: 5px 0; text-indent: 2em; white-space: pre-wrap; word-wrap: break-word; word-wrap: break-all; }
.art-con a { display: block; clear: both; color: #137bf2; }
.news-list > .n-list-cover{ padding-left:0 !important;}
/*csx*/
.ptb12 { padding-top: 12px; padding-bottom: 12px; }
.n-list { background-color: #fff; }
.n-list > li, .n-list > .n-list-li { position: relative; display: -webkit-box; display: box; box-pack: center; padding-right: 15px; margin-left: 15px; border-top: 1px solid #f1f1f1; clear: both; }
.n-list > li:first-child, .n-list > .n-list-li:first-child { border-top: none; }
.n-list > .n-list-link:active { background-color: #f7f7f7; padding-left: 15px; margin-left: 0 }
.n-list > .n-list-cover { padding-left: 15px; margin-left: 0; }
.n-list > .list-arrow-r, .n-list > .list-arrow-d, .n-list > .list-arrow-u { padding-right: 30px }
.n-list > .list-arrow-r:after, .n-list > .list-arrow-d:after, .n-list > .list-arrow-u:after { position: absolute; top: 50%; right: 15px; margin-top: -5px; content: ""; display: block; width: 8px; height: 8px; border: solid #cdcdcd; border-width: 2px 2px 0 0; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }
.n-list > .list-arrow-d:after { right: 13px; margin-top: -8px; -webkit-transform: rotate(135deg); -moz-transform: rotate(135deg); -ms-transform: rotate(135deg); transform: rotate(135deg); }
.n-list > .list-arrow-u:after { right: 13px; margin-top: -2px; -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); }
.n-list-title { display: -webkit-box; display: -moz-box; display: box; -webkit-box-orient: vertical; -moz-box-orient: vertical; box-orient: vertical; -webkit-box-pack: start; -moz-box-pack: start; box-pack: start; }
.n-list-key, .n-list-info { display: -webkit-box; display: -moz-box; display: box; -webkit-box-orient: vertical; -moz-box-orient: vertical; box-orient: vertical; -webkit-box-pack: center; -moz-box-pack: center; box-pack: center; }
.n-list-info { display: -webkit-box; display: -moz-box; display: box; -webkit-box-flex: 1; -moz-box-flex: 1; box-flex: 1; }
.n-list-flex { display: -webkit-box; display: -moz-box; display: box; -webkit-box-flex: 1; -moz-box-flex: 1; box-flex: 1; }
.n-list > .n-list-function { border-top: none; padding-right: 0; }
.n-list > .n-list-function .n-list-flex { border-top: 1px solid #f1f1f1; }
.n-list > .n-list-function:first-child .n-list-flex { border-top: none; }
.n-list > li:first-child, .n-list > .n-list-function:first-child, .n-list > .n-list-function:first-child .n-list-info, .n-list > div:first-child { border: 0; }
.n-list > .n-list-label { border-top: none; padding-right: 0; }
.n-list .n-list-img { width: 100px; height: 68px; overflow: hidden; position: relative }
.n-list .n-list-img img { width: 100%; height: auto; }
.required { position: relative; }
.required:before { content: "*"; position: absolute; color: #f00; font-size: 14px; height: 12px; line-height: 12px; vertical-align: middle; left: -10px; top: 50%; margin-top: -5px; }
.n-avatar-s, .n-avatar-m, .n-avatar-l { width: 26px; height: 26px; display: -webkit-box; -webkit-box-pack: center; -webkit-box-align: center; }
.n-avatar-m { width: 40px; height: 40px; }
.n-avatar-l { width: 54px; height: 54px; }
.n-avatar-s img, .n-avatar-m img, .n-avatar-l img { width: 100%; height: 100%; }
.c-ccc{ color:#ccc;}
.process-opera{ overflow:hidden; border-top:1px solid #f2f2f2;}
.process-opera div{ width:50%; float:left; border-left:1px solid #f2f2f2; line-height:40px; color:#007cd9; text-align:center;}
.process-opera div:first-child{ border-left:none;}
.process-detail{ display:block; background:#fff; padding-left:40px; font-size:14px;}
.process-detail li{ line-height:45px; position:relative; border-top:1px solid #f2f2f2; padding-right:30px; color:#909090;}
.process-detail li:first-child{ border-top:none;}
.process-detail li.nojt{ padding-right:15px;}
.process-detail li .arrow-right{ position:absolute; right:15px; top:50%; margin-top:-5px;}
.process-state{ position:absolute; width:15px; height:15px; background:#ccc; border-radius:50%; text-align:center; line-height:15px; color:#fff; font-size:12px; left:-25px; top:16px;}
.process-state:before{ content:''; display:block; width:1px; height:32px; background:#ccc; position:absolute; left:7px; top:15px;}
.process-detail li:last-child .process-state:before{ display:none;}
.process-state.curr{ background:#2eba52;}
.process-state.curr:before{ background:#2eba52;}
.r-textarea { width: 100%; border: 0; padding: 0; resize: none; }
.message-nav{}
.message-nav li{ padding-left:10px; border-bottom:1px solid #e1e1e1; border-top:1px solid #e1e1e1; background:#fff; margin-top:10px;}
.mnav-top{ line-height:35px; border-bottom:1px solid #f2f2f2; padding-right:10px;}
.mnav-mess{ padding:8px 0 10px 0; position:relative;}
.mnav-mess .ghbq{ position:absolute; width:50px; height:16px; line-height:16px; text-align:center; background:#f9bb4d; color:#fff; font-size:10px; right:15px; top:13px; border-radius:3px;}
.mnav-mess .spbq{ position:absolute; width:50px; height:16px; line-height:16px; text-align:center; background:#41b1f2; color:#fff; font-size:10px; right:15px; top:13px; border-radius:3px;}
.kf-btn{ display:block; width:30px; height:30px; position:absolute; right:10px; top:50%; margin-top:-15px; background:url(../images/kf.png) no-repeat; background-size:100% 100%; border-radius:50%;}

+ 70 - 0
html/grzx/css/my-detail.css

@ -0,0 +1,70 @@
.text-right{
		text-align: right;
	}
input[type="text"]{
	line-height: inherit;
    width: 100%;
    height: inherit;
    margin-bottom: 0px;
    padding: 0px;
    padding-right: 0px;
    border: none;
    border-radius: 0;
    outline: 0;
    background-color: #fff;
    -webkit-appearance: none;
    user-select: none;
    -webkit-user-select: none; 
}
input:focus{
    background-color: inherit;
}
input:active{
    background-color: inherit;
}
.img-sign{
	width: 54px;
	height: 45px;
}
.c-arrow-r{
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -5px;
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border: solid #cdcdcd;
	border-width: 2px 2px 0 0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.no-user-select{-webkit-user-select: none; -moz-user-select: none; -ms-user-select: none;}
div.pinch-zoom,
div.pinch-zoom img{
    width: 100%;
    -webkit-user-drag: none;
}
#clipPanel{
    width: 100%;
    height: 100%;
}
#clip{
    position: absolute;
    z-index: 100;
    outline: rgba(0, 0, 0, 0.5) solid 1000px;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%); 
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}
#memberContainer{
	position: fixed;
	top: 0px;
	width: 100%;
	z-index: 99;
}

+ 63 - 0
html/grzx/css/shenfenyanzheng.css

@ -0,0 +1,63 @@
.c-input{
	margin-top: 3px;
	height: 33px;
}
@font-face {
	font-family: Muiicons;
	font-weight: 400;
	font-style: normal;
	src: url(../../../fonts/mui.ttf) format('truetype')
}
.mui-input-row { position: relative }
.mui-input-row .mui-input-clear~.mui-icon-clear{ font-size: 20px; position: absolute; z-index: 1; top: 10px;right: 0;width: 38px;height: 38px;text-align: center;color: #999}
.mui-icon {font-family: Muiicons;font-size: 24px;font-weight: 400;font-style: normal;line-height: 1;display: inline-block;text-decoration: none;-webkit-font-smoothing: antialiased;}	
.mui-icon-clear:before,.mui-icon-close-filled:before {content: '\e434'}
.mui-hidden.mui-icon-clear { pointer-events: none; }
.mui-hidden.mui-icon-clear:before {content: '\e583';}
/*#doctor_zk{ display: none;}*/ 
.no{ display: none; position: absolute;left:0;top:0px; width:100%; height: 100%;z-index:10}
.jge{background: #f3f3f3;min-height:10px;margin-left: 0 !important;border-top: 1px solid #e1e1e1 !important;border-bottom: 1px #e1e1e1 solid; padding-left:15px; }
.jge a{color: #17b3ec;}
.tag_cyc{position: relative; width: 47px; display: inline-block; height: 30px; background-color: #fff; background-clip: padding-box; border: 2px solid #ddd; border-radius: 20px; }
.tag_cyc i{position: absolute;top: 1px;left: -1px; z-index: 1;width: 28px;height: 28px; background-color: #fff; background-clip: padding-box; border-radius: 16px; -webkit-box-shadow: 0 2px 5px rgba(0,0,0,.4); box-shadow: 0 2px 5px rgba(0,0,0,.4); }
.tag_cyc.on{ background-color: #4cd964; border-color: #4cd964}  
.tag_cyc.on i{ left:auto;right: -1px; }
#scan_ssc_info,#rescan_ssc_info { font-size: 16px; height: 40px; line-height: 40px; padding-left: 10px; color: #FFF; background-color: #FA8888;}
#rescan_ssc_info { display: none; }
.scan-btn { float: right; margin-right: 10px; color: #8F2626; text-decoration:underline; text-underline-color: #8F2626;}
/*#upload{display: block;width: 86px;height: 45px;position: absolute;right: 0;top: 0;color: #17b3ec;}*/
.add-img .add {width: 68px;height: 68px; margin-left:1px ;}
.pr40 { padding-right: 40px; }
.edit-list>li { padding-right: 0; }
.edit-list li.n-list-cover{
	padding-left: 10px!important;
}
.mui-hidden.mui-icon-clear{
	font-family: inherit;
	display: none;
}
.btn-yzm{
	margin-top: 3px;
    text-align: center;
    height: 30px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-box-pack: center;
    border-radius: 5px;
    border: 1px solid #17b3ec;
    color: #17b3ec;
    width: 160px;
    font-size: 14px;
}
.btn-yzm.disabled{
	color: #ccc;
	border-color: #ccc;
}
.btn-yzm.disabled label{
	color: #17b3ec;
}

File diff suppressed because it is too large
+ 5618 - 0
html/grzx/css/sq-style.css


+ 67 - 0
html/grzx/css/style.css

@ -0,0 +1,67 @@
/* 全局样式 */
	/* 健康管理页面 依次四个颜色 */
.bgc-5897cc{background:#5897cc;}
.bgc-e67b85{background:#e67b85;}
.bgc-a37cab{background:#a37cab;}
.bgc-ea7a28{background:#ea7a28;}
	/* 我的订单页面 依次四个颜色 */
.bgc-e7674e{background:#e7674e;}
.bgc-ee9d34{background:#ee9d34;}
.bgc-7fc541{background:#7fc541;}
.bgc-cf678c{background:#cf678c;}
	/* 个人中心 依次9个颜色 */
.bgc-a8db5c{background:#a8db5c;}
.bgc-ffa626{background:#ffa626;}
/* .bgc-e7674e{background:#e7674e;} */
/* .bgc-ee9d34{background:#ee9d34;} */
/* .bgc-7fc541{background:#7fc541;} */
/* .bgc-cf678c{background:#cf678c;} */
.bgc-ba76d9{background:#ba76d9;}
.bgc-f05b1a{background:#f05b1a;}
.bgc-4eb5ce{background:#4eb5ce;}
/* 我的药单 */
.my-drug-list .c-list-info h4{font-size:12px;color:#666 !important;}
.my-drug-list .c-list-info > p{font-size:12px;}
/* 医嘱管理 */
.phy-order-man .c-list-info h4{font-size:12px;color:#333 !important;}
.phy-order-man .c-list-info > p{font-size:12px;}
/* 健康管理 */
.list-item-1 .ico-wrap{display:inline-block;width:20px;height:20px;border-radius:8px;color:#fff;vertical-align:middle;text-align:center;}
.list-item-1 .ico-wrap i{display:inline-block;vertical-align:top;font-size:12px;}
.list-item-1 .c-list-text h4 > .name{vertical-align:middle;font-size:14px;color:#333;}
/* 我的医生-就诊医生 */
.tab-item-1.c-lab-mor li a{border-left:none;color:#909090;}
.tab-item-1.c-lab-mor li.hit a{color:#37a6eb;}
/* 我的医生-专家列表 */
.list-item-1 .c-list-info > h4{font-size:16px;color:#333;}
.list-item-1 .c-list-info .title{margin-left:10px;font-size:12px;color:#878787;}
.list-item-1 .c-list-info > p {font-size:12px;color:#666;}
.list-item-1.c-list > .c-list-cover{padding-left:0 !important;margin-left:15px !important;}
/* 我的预约 */
.list-item-2 .c-list-text .c-list-value{padding-right:0;}
.list-item-2 li:first-child h4{font-size:12px;}
.list-item-2 li:first-child .c-list-value.state-1{color:#ff8100;}
.list-item-2 li:first-child .c-list-value.state-2{color:#4dcd70;}
.list-item-2 li:first-child .c-list-value.state-3{color:#333;}
.list-item-2 li:nth-child(2) h4{font-size:15px; }
.list-item-2 li:nth-child(2) .c-list-info > p{font-size:12px;}
.list-item-2 li:last-child h4{font-size:10px;color:#ccc !important;}
.list-item-2 .c-list-function .c-list-info{border-top:none;}
.list-item-2 .c-list-function{border-top: 1px solid #f1f1f1;}
/* 个人中心 */
.personal-center header{position:relative;height:170px;background:url(../images/bc.jpg) center center;}
.personal-center header .center-block{position:absolute;width:71px;height:111px;margin: auto;top:0;bottom:0;left:0;right:0;}
.personal-center header .img-block{border-radius:50%;border:3px solid rgba(0,0,0,0.3);overflow:hidden;}
.personal-center header .img-block img{width:65px;height:65px;}
/* footer */
.footer {background-color: #f8f8f9; left: 0; bottom: 0; height: 50px; padding-top: 5px;}
.footer li {position: relative;}
.footer li em {position: absolute; left: 50%; top: -2px; width: 18px; height: 18px; color: #fff; border-radius: 50%;  background-color: #f00; margin-left: 3px;}
.footer a {color: #333;}
.footer a.curr {color: #17b3ec;}
.footer i.iconfont {font-size: 20px;}
.footer span {display: block; font-size: 10px;}

+ 3544 - 0
html/grzx/css/wy-style.css

@ -0,0 +1,3544 @@
/* ui-form
-----------------------------------------------------------------------------*/
.input-group,
.input-group *,
.input-group-checkbox,
.input-group-radio,
.input-group-checkbox *,
.input-group-radio * {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.input-group {
	border-collapse: separate;
	display: table;
	position: relative;
}
.input-group label {
	display: block;
}
.input-group-addon {
	background-color: #fff;
	border: 1px solid #f2f2f2;
	border-radius: 4px;
	border-bottom-right-radius: 0;
	border-top-right-radius: 0;
	color: #333;
	font-size: 14px;
	font-weight: 400;
	line-height: 1;
	padding: 10px;
	text-align: center;
	display: table-cell;
	vertical-align: middle;
	white-space: nowrap;
	width: 1%;
}
.input-group-addon:first-child {
	border-right: 0;
}
.input-group-addon .iconfont {
	color: #b4b4b4;
	font-size: 18px;
}
.input-group-addon.focus .iconfont {
	color: #37a6ed;
}
.input-group-btn {
	position: absolute;
	right: 5px;
	top: 7px;
}
.input-group-btn .c-btn {
	padding: 5px;
	border: #ddd 1px solid;
}
.input-group .form-control,
.input-group .form-select,
.input-group .form-textarea {
	-webkit-appearance: none;
	appearance: none;
	background-color: #fff;
	background-image: none;
	border: 1px solid #e1e1e1;
	border-radius: 5px;
	color: #333;
	display: block;
	font-size: 14px;
	height: 45px;
	line-height: 1.42857;
	padding: 6px 12px;
	transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
	outline: 0;
}
.input-group .form-select-arrow {
	display: block;
	width: 10px;
	height: 10px;
	border: solid #ccc;
	border-width: 2px 2px 0 0;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	-o-transform: rotate(135deg);
	transform: rotate(135deg);
	position: absolute;
	top: 15px;
	right: 8px;
}
.input-group.input-border .form-control,
.input-group.input-border .form-select,
.input-group.input-border .form-textarea {
	border-radius: 0px;
	border-right: 0;
	font-size: 15px;
	height: 45px;
	line-height: 1.52857;
}
.input-group .form-control:focus,
.input-group .form-select:focus,
.input-group .form-textarea:focus {
	color: #333;
}
.input-group .form-control::-webkit-input-placeholder,
.input-group .form-textarea::-webkit-input-placeholder {
	color: #bfbfbf;
}
.input-group .form-control:-moz-placeholder,
.input-group .form-textarea:-moz-placeholder {
	color: #bfbfbf;
}
.input-group .form-control::-moz-placeholder,
.input-group .form-textarea::-moz-placeholder {
	color: #bfbfbf;
}
.input-group .form-control:-ms-input-placeholder,
.input-group .form-textarea:-ms-input-placeholder {
	color: #bfbfbf;
}
.input-group .form-textarea {
	height: auto;
	resize: none;
	margin: 0;
}
.input-group .form-control:nth-child(2),
.input-group .form-textarea:nth-child(2) {
	border-bottom-left-radius: 0;
	border-top-left-radius: 0;
	border-left: 0;
	padding-left: 0;
}
.input-group .form-control,
.input-group label .form-control,
.input-group label .form-select,
.input-group label .form-textarea {
	border-radius: 4px;
	padding-left: 12px;
	border-left: 1px #e1e1e1 solid;
}
.input-group .input-group-addon + .form-control,
.input-group .input-group-addon + .form-select {
	border-top-left-radius: 0px;
	border-bottom-left-radius: 0px;
	padding-left: 0px;
	border-left: 0px;
}
.input-group-text {
	font-size: 14px;
	color: #555;
}
.input-merge .input-group .input-group-addon,
.input-group.input-border .input-group-addon {
	border-bottom-left-radius: 0;
	border-top-left-radius: 0;
}
.input-group.input-border .input-group-addon {
	border-left: 0;
	font-size: 15px;
	color: #333;
	padding: 10px 20px;
}
.input-merge .input-group .form-control,
.input-merge .input-group .form-select,
.input-merge .input-group .form-textarea {
	border-bottom-right-radius: 0;
	border-top-right-radius: 0;
}
.input-merge .input-group:first-child .input-group-addon {
	border-top-left-radius: 4px;
}
.input-merge .input-group:first-child .form-control,
.input-merge .input-group:first-child .form-select,
.input-merge .input-group:first-child .form-textarea {
	border-top-right-radius: 4px;
}
.input-merge .input-group:last-child .form-control,
.input-merge .input-group:last-child .form-select,
.input-merge .input-group:last-child .form-textarea {
	border-bottom-right-radius: 4px;
}
.input-merge .input-group:last-child .input-group-addon {
	border-bottom-left-radius: 4px;
}
.input-merge .input-group.input-border .input-group-addon,
.input-merge .input-group.input-border .form-control,
.input-merge .input-group.input-border .form-select,
.input-merge .input-group.input-border .form-textarea,
.input-merge .input-group.input-border .form-control,
.input-merge .input-group.input-border .form-select,
.input-merge .input-group.input-border .form-textarea,
.input-merge .input-group.input-border .input-group-addon {
	border-radius: 0px;
}
.input-merge .input-group.input-border {
	padding-left: 20px;
}
.input-merge .input-group.input-border .input-group-addon {
	padding-left: 0
}
.input-merge .input-group .input-group-addon,
.input-merge .input-group .form-control,
.input-merge .input-group .form-select,
.input-merge .input-group .form-textarea {
	border-bottom: 0;
}
.input-merge .input-group:last-child .input-group-addon,
.input-merge .input-group:last-child .form-control,
.input-merge .input-group:last-child .form-select,
.input-merge .input-group:last-child .form-textarea {
	border-bottom: 1px solid #e1e1e1;
}
.input-merge.input-merge-border .input-group:first-child .input-group-addon,
.input-merge.input-merge-border .input-group:first-child .form-control,
.input-merge.input-merge-border .input-group:first-child .form-select,
.input-merge.input-merge-border .input-group:first-child .form-textarea {
	border-top: 0;
}
.input-merge.input-merge-border .input-group:last-child .input-group-addon,
.input-merge.input-merge-border .input-group:last-child .form-control,
.input-merge.input-merge-border .input-group:last-child .form-select,
.input-merge.input-merge-border .input-group:last-child .form-textarea {
	border-bottom: 0;
}
.input-merge.input-merge-border {
	border-top: 1px solid #e1e1e1;
	border-bottom: 1px solid #e1e1e1;
	background: #fff;
}
.input-group-addon-disabled,
.form-control[disabled],
.form-control:disabled,
.form-textarea[disabled],
.form-textarea:disabled,
.form-textarea[disabled],
.form-textarea:disabled,
.form-select[disabled],
.form-select:disabled {
	background-color: #f9f9f9;
}
.input-group .form-input {
	height: 45px;
	border-top: 1px solid #e1e1e1;
	position: relative;
	padding: 7px 0;
}
.input-group .form-input-text {
	color: #909090;
	font-size: 15px;
}
.input-group .form-select-box {
	display: inline-block;
	position: relative;
	margin-right: 10px;
}
.input-group .form-select-box .form-select {
	width: 100%;
}
.input-group .form-select-box .form-select-arrow {
	top: 7px;
	right: 12px
}
.input-group.input-border .form-input .form-control,
.input-group.input-border .form-input .form-select {
	height: 31px;
	border: #e1e1e1 1px solid !important;
	border-radius: 2px;
	display: inline-block;
	vertical-align: baseline;
	line-height: 1.2;
}
.input-group .input-clear {
	position: absolute;
	right: 8px;
	top: 8px;
	background: #ccc;
	border-radius: 50%;
	width: 26px;
	height: 26px;
	text-align: center;
}
.input-group .input-clear .close {
	position: relative;
	display: inline-block;
	width: 15px;
	height: 15px;
	overflow: hidden;
	top: 6px;
}
.input-group .input-clear .close::before,
.input-group .input-clear .close::after {
	content: '';
	position: absolute;
	height: 2px;
	width: 100%;
	top: 50%;
	left: 0px;
	margin-top: -1px;
	background: #fff;
	border-radius: 6px;
}
.input-group .input-clear .close::before {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.input-group .input-clear .close::after {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.input-group-checkbox,
.input-group-radio {
	display: inline-block;
	position: relative;
	font-size: 14px;
	color: #909090;
}
.input-group-checkbox label {
	display: block;
	cursor: pointer;
}
.input-group-checkbox label input[type="checkbox"],
.input-group-radio label input[type="radio"] {
	position: absolute;
	opacity: 0;
	width: 1px;
	height: 1px;
}
.input-group-checkbox .input-group-pack,
.input-group-radio .input-group-pack {
	width: 20px;
	height: 20px;
	background-color: #ffffff;
	border: 1px #d3d3d3 solid;
	padding: 0;
	margin: 0 5px 0 0;
	position: relative;
	display: inline-block;
	vertical-align: middle;
	border-radius: 5px;
	overflow: hidden;
	top: -2px;
}
.input-group-radio .input-group-pack {
	border-radius: 50%;
}
.input-group-checkbox .input-group-pack.input-group-pack-disabled,
.input-group-radio .input-group-pack.input-group-pack-disabled {
	background-color: #f0f0f0;
}
.input-group-checkbox .input-group-pack .tick {
	display: block;
	width: 12px;
	height: 2px;
	background: #4dcd70;
	margin: 8px 0 0 6px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
	position: relative;
	top: 50px;
}
.input-group-checkbox .input-group-pack .tick:after {
	content: '';
	width: 8px;
	height: 2px;
	background: #4dcd70;
	position: absolute;
	top: -3px;
	left: -5px;
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	transform: rotate(90deg);
}
.input-group-radio .input-group-pack .disc {
	display: block;
	content: "" !important;
	width: 0px;
	height: 0px;
	border-radius: 50%;
	background-color: #4dcd70;
	margin: 4px;
}
.input-group-checkbox input[type="checkbox"]:checked ~ .tick,
.input-group-checkbox .input-group-pack.checked .tick {
	top: 0px;
}
.input-group-radio input[type="radio"]:checked ~ .disc,
.input-group-radio .input-group-pack.checked .disc {
	width: 10px;
	height: 10px;
}
.input-group-switch {
	position: relative;
	font-size: 16px;
	width: 52px;
	height: 32px;
	line-height: 1em;
}
.input-group-switch input {
	width: 52px;
	height: 32px;
	position: absolute;
	z-index: 10;
	border: none;
	background: none;
	-webkit-appearance: none;
	outline: none;
}
.input-group-switch input:before {
	content: '';
	width: 50px;
	height: 30px;
	border: 1px solid #e5e5e5;
	background-color: #fff;
	border-radius: 20px;
	cursor: pointer;
	display: inline-block;
	position: relative;
	vertical-align: middle;
	-webkit-user-select: none;
	user-select: none;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
	border-color: #dfdfdf;
	-webkit-box-shadow: #dfdfdf 0px 0px 0px 0px inset;
	box-shadow: #dfdfdf 0px 0px 0px 0px inset;
	-webkit-transition: border 0.4s, -webkit-box-shadow 0.4s;
	transition: border 0.4s, box-shadow 0.4s;
	-webkit-background-clip: content-box;
	background-clip: content-box;
}
.input-group-switch input:checked:before {
	border-color: #4cd964;
	-webkit-box-shadow: #4cd964 0px 0px 0px 16px inset;
	box-shadow: #4cd964 0px 0px 0px 16px inset;
	background-color: #4cd964;
	transition: border 0.4s, box-shadow 0.4s, background-color 1.2s;
	-webkit-transition: border 0.4s, -webkit-box-shadow 0.4s, background-color 1.2s;
	background-color: #4cd964;
}
.input-group-switch input:checked:after {
	left: 21px;
}
.input-group-switch input:after {
	content: '';
	width: 30px;
	height: 30px;
	position: absolute;
	top: 1px;
	left: 0;
	border-radius: 100%;
	background-color: #fff;
	-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
	-webkit-transition: left 0.2s;
	transition: left 0.2s;
}
.input-group-switch input.thread:before {
	content: '';
	width: 50px;
	height: 3px;
	border: 1px solid #e5e5e5;
	background-color: #e5e7ea;
	border-radius: 20px;
	cursor: pointer;
	display: inline-block;
	position: relative;
	vertical-align: middle;
	-webkit-user-select: none;
	user-select: none;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
	border-color: #dfdfdf;
	-webkit-box-shadow: #dfdfdf 0px 0px 0px 0px inset;
	box-shadow: #dfdfdf 0px 0px 0px 0px inset;
	-webkit-transition: border 0.4s, -webkit-box-shadow 0.4s;
	transition: border 0.4s, box-shadow 0.4s;
	-webkit-background-clip: content-box;
	background-clip: content-box;
}
.input-group-switch input.thread:checked:before {
	border-color: #4cd964;
	-webkit-box-shadow: #4cd964 0px 0px 0px 16px inset;
	box-shadow: #4cd964 0px 0px 0px 16px inset;
	background-color: #4cd964;
	transition: border 0.4s, box-shadow 0.4s, background-color 1.2s;
	-webkit-transition: border 0.4s, -webkit-box-shadow 0.4s, background-color 1.2s;
	background-color: #4cd964;
}
.input-group-switch input.thread:checked:after {
	left: 33px;
}
.input-group-switch input.thread:after {
	content: '';
	width: 20px;
	height: 20px;
	position: absolute;
	top: 3px;
	left: 0;
	border-radius: 100%;
	background-color: #fff;
	-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
	-webkit-transition: left 0.2s;
	transition: left 0.2s;
}
/* css c-list
-----------------------------------------------------------------------------*/
.list-icon {
	height: 8px;
	width: 8px;
	position: relative;
	display: inline-block;
}
.arrow-right {
	display: block;
	width: 8px;
	height: 8px;
	border: solid #cdcdcd;
	border-width: 2px 2px 0 0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.c-list-group {}
.c-list-group h3 {
	padding: 6px 15px;
	background-color: #f9f9f9;
	font-size: 13px;
	color: #5b5b5b;
	margin: 0;
	vertical-align: middle;
}
.c-list {
	background-color: #fff;
}
.c-list > li,
.c-list > .c-list-div {
	font-size: 15px;
	color: #333;
	position: relative;
	display: -webkit-box;
	display: box;
	margin-left: 15px;
	border-top: 1px solid #f1f1f1;
}
.c-list > .c-list-text {
	line-height: 20px;
	padding: 12px 15px 12px 0;
}
.c-list > .c-list-function {
	border-top: none;
}
.c-list > .c-list-function .c-list-info {
	border-top: 1px solid #f1f1f1;
}
.c-list > li:first-child,
.c-list > .c-border-t:first-child,
.c-list >li:first-child .c-border-t,
.c-list > .c-list-function:first-child,
.c-list > .c-list-function:first-child .c-list-info,
.c-list > div:first-child .c-border-t,
.c-list > div:first-child {
	border: 0;
	background-image: none
}
.c-list > .c-list-cover {
	padding-left: 15px !important;
	margin-left: 0 !important;
}
.c-list .c-list-info {
	-webkit-box-flex: 1;
	box-flex: 1;
	padding-right: 15px;
	display: box;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
}
.c-list h4 {
	color: #333 !important;
}
.c-list .c-list-info > h4 {
	font-size: 15px;
	line-height: 20px
}
.c-list .c-list-info > p {
	font-size: 13px;
	line-height: 20px;
	color: #909090;
}
.c-list .c-list-label {
	font-size: 13px !important;
	color: #909090 !important;
	padding: 10px 15px 10px 0!important;
	border-top: 1px dashed #e1e1e1 !important;
}
.c-list .c-list-key {
	margin-right: 15px;
}
.c-list .c-list-img {
	width: 100px;
	height: 68px;
	margin: 10px 10px 10px 0;
	position: relative
}
.c-list .c-list-img img {
	width: auto;
	height: 68px;
}
.c-list > .c-list-link:active {
	background-color: #e5e6e7;
	padding-left: 15px;
	margin-left: 0
}
.c-list-link:active,
.c-list-link.c-border-t:active,
.c-list-link:active + .c-border-t,
.c-list-link:active + .c-border-t {
	background-image: none;
	border-top-color: #e5e6e7
}
.c-list .c-list-value {
	color: #909090;
	display: box;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
}
.c-list .c-list-title {}
.c-list .c-list-link .c-list-value,
.c-list .c-list-link .c-list-title {
	padding-right: 20px;
}
.c-list .c-list-badge,
.c-list .c-list-action {
	font-size: 13px;
	color: #909090;
	position: absolute;
	height: 100%;
	right: 15px;
	display: box;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
	top: 0;
}
.c-list-link .c-list-badge,
.c-list-link .c-list-action {
	right: 35px
}
.c-list-link .list-icon {
	position: absolute;
	right: 15px;
	top: 50%;
	margin-top: -4px;
}
.c-list .c-avatar-s,
.c-list .c-avatar-m,
.c-list .c-avatar-l {
	margin: 10px 15px 10px 0;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-pack: center;
	-webkit-box-align: center;
}
.c-list-indent-s {
	padding-right: 70px !important;
}
.c-list-indent-m {
	padding-right: 110px !important;
}
.c-list-action .input-group-checkbox .input-group-pack,
.c-list-action .input-group-radio .input-group-pack {
	margin: 0 0 0 5px;
}
.c-avatar-s {
	width: 26px;
	height: 26px;
}
.c-avatar-m {
	width: 40px;
	height: 40px;
}
.c-avatar-l {
	width: 54px;
	height: 54px;
}
.c-avatar-s img,
.c-avatar-m img,
.c-avatar-l img {
	width: 100%;
	height: 100%;
}
.c-list-text .c-t-right {
	color: #909090 !important;
}
.c-list-text .c-t-right {
	padding-right: 0px;
	color: #909090;
}
.c-list-link .c-t-right {
	padding-right: 20px !important;
}
/* onoffswitch
-----------------------------------------------------------------------------*/
.onoffswitch {
	position: relative;
	width: 65px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
}
.onoffswitch input.onoffswitch-checkbox {
	opacity: 0
}
.onoffswitch-label {
	display: block;
	overflow: hidden;
	cursor: pointer;
	border-radius: 6px;
}
.onoffswitch-inner {
	width: 200%;
	margin-left: -100%;
	-moz-transition: margin 0.3s ease-in 0s;
	-webkit-transition: margin 0.3s ease-in 0s;
	-o-transition: margin 0.3s ease-in 0s;
	transition: margin 0.3s ease-in 0s;
}
.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-inner {
	margin-left: 0;
}
.onoffswitch-inner:before,
.onoffswitch-inner:after {
	float: left;
	width: 50%;
	height: 28px;
	padding: 0;
	line-height: 28px;
	font-size: 14px;
	color: white;
	font-family: Trebuchet, Arial, sans-serif;
	font-weight: bold;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.onoffswitch-inner:before {
	content: "ON";
	padding-left: 5px;
	background-color: #4cd964;
	color: #FFFFFF;
}
.onoffswitch-inner:after {
	content: "OFF";
	padding-right: 5px;
	background-color: #e5e7ea;
	color: #a4a9ae;
	text-align: right;
}
.onoffswitch-switch {
	width: 22px;
	height: 22px;
	margin: 4px;
	background: #FFFFFF;
	border-radius: 6px;
	position: absolute;
	top: 50%;
	margin-top: -1px;
	right: 35px;
	-moz-transition: all 0.3s ease-in 0s;
	-webkit-transition: all 0.3s ease-in 0s;
	-o-transition: all 0.3s ease-in 0s;
	transition: all 0.3s ease-in 0s;
}
.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-switch {
	right: 0px;
}
/* css c-list
-----------------------------------------------------------------------------*/
.list-icon {
	height: 8px;
	width: 8px;
	position: relative;
	display: inline-block;
}
.arrow-right {
	display: block;
	width: 8px;
	height: 8px;
	border: solid #cdcdcd;
	border-width: 2px 2px 0 0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.c-list-group {}
.c-list-group h3 {
	padding: 6px 15px;
	background-color: #f9f9f9;
	font-size: 13px;
	color: #5b5b5b;
	margin: 0;
	vertical-align: middle;
}
.c-list {
	background-color: #fff;
}
.c-list > li,
.c-list > .c-list-div {
	font-size: 15px;
	color: #333;
	position: relative;
	display: -webkit-box;
	display: box;
	margin-left: 15px;
	border-top: 1px solid #f1f1f1;
}
.c-list > .c-list-text {
	line-height: 20px;
	padding: 12px 15px 12px 0;
}
.c-list > .c-list-function {
	border-top: none;
}
.c-list > .c-list-function .c-list-info {
	border-top: 1px solid #f1f1f1;
}
.c-list > li:first-child,
.c-list > .c-border-t:first-child,
.c-list >li:first-child .c-border-t,
.c-list > .c-list-function:first-child,
.c-list > .c-list-function:first-child .c-list-info,
.c-list > div:first-child .c-border-t,
.c-list > div:first-child {
	border: 0;
	background-image: none
}
.c-list > .c-list-cover {
	padding-left: 15px !important;
	margin-left: 0 !important;
}
.c-list .c-list-info {
	-webkit-box-flex: 1;
	box-flex: 1;
	padding-right: 15px;
	display: box;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
}
.c-list h4 {
	color: #333 !important;
}
.c-list .c-list-info > h4 {
	font-size: 15px;
	line-height: 20px
}
.c-list .c-list-info > p {
	font-size: 13px;
	line-height: 20px;
	color: #909090;
}
.c-list .c-list-label {
	font-size: 13px !important;
	color: #909090 !important;
	padding: 10px 15px 10px 0!important;
	border-top: 1px dashed #e1e1e1 !important;
}
.c-list .c-list-key {
	margin-right: 15px;
}
.c-list .c-list-img {
	width: 100px;
	height: 68px;
	margin: 10px 10px 10px 0;
	position: relative
}
.c-list .c-list-img img {
	width: auto;
	height: 68px;
}
.c-list > .c-list-link:active {
	background-color: #e5e6e7;
	padding-left: 15px;
	margin-left: 0
}
.c-list-link:active,
.c-list-link.c-border-t:active,
.c-list-link:active + .c-border-t,
.c-list-link:active + .c-border-t {
	background-image: none;
	border-top-color: #e5e6e7
}
.c-list .c-list-value {
	color: #909090;
	display: box;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
}
.c-list .c-list-title {}
.c-list .c-list-link .c-list-value,
.c-list .c-list-link .c-list-title {
	padding-right: 20px;
}
.c-list .c-list-badge,
.c-list .c-list-action {
	font-size: 13px;
	color: #909090;
	position: absolute;
	height: 100%;
	right: 15px;
	display: box;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
	top: 0;
}
.c-list-link .c-list-badge,
.c-list-link .c-list-action {
	right: 35px
}
.c-list-link .list-icon {
	position: absolute;
	right: 15px;
	top: 50%;
	margin-top: -4px;
}
.c-list .c-avatar-s,
.c-list .c-avatar-m,
.c-list .c-avatar-l {
	margin: 10px 15px 10px 0;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-pack: center;
	-webkit-box-align: center;
}
.c-list-indent-s {
	padding-right: 70px !important;
}
.c-list-indent-m {
	padding-right: 110px !important;
}
.c-list-action .input-group-checkbox .input-group-pack,
.c-list-action .input-group-radio .input-group-pack {
	margin: 0 0 0 5px;
}
.c-avatar-s {
	width: 26px;
	height: 26px;
}
.c-avatar-m {
	width: 40px;
	height: 40px;
}
.c-avatar-l {
	width: 54px;
	height: 54px;
}
.c-avatar-s img,
.c-avatar-m img,
.c-avatar-l img {
	width: 100%;
	height: 100%;
}
.c-list-text .c-t-right {
	color: #909090 !important;
}
.c-list-text .c-t-right {
	padding-right: 0px;
	color: #909090;
}
.c-list-link .c-t-right {
	padding-right: 20px !important;
}
/* css c-lab1
-----------------------------------------------------------------------------*/
.c-lab-les {
	display: -webkit-box;
	display: box;
	border: 1px solid #4dcd70;
	overflow: hidden;
}
.c-lab-les li {
	-webkit-box-flex: 1;
	box-flex: 1;
	height: 30px;
	line-height: 30px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	text-align: center;
	border-left: 1px solid #4dcd70;
	background: #fff;
}
.c-lab-les li:first-child {
	border-left: none;
}
.c-lab-les li a {
	display: block;
	width: 100%;
	height: 30px;
	color: #4dcd70;
	font-size: 13px;
}
.c-lab-les li.hit {
	background-color: #4dcd70;
}
.c-lab-les li.hit a {
	color: #fff;
}
/* css c-lab2
-----------------------------------------------------------------------------*/
.c-lab-mor {
	display: -webkit-box;
	display: box;
	overflow: hidden;
	background: #fff;
}
.c-lab-mor li {
	-webkit-box-flex: 1;
	box-flex: 1;
	height: 40px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	text-align: center;
	padding-top: 6px;
	border-bottom: 1px solid #e1e1e1;
}
.c-lab-mor li:first-child {
	border-left: none;
}
.c-lab-mor li a {
	display: block;
	width: 100%;
	height: 28px;
	line-height: 28px;
	color: #333;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	border-left: 1px solid #ddd;
	font-size: 14px;
}
.c-lab-mor li:first-child a {
	border-left: none;
}
.c-lab-mor li.hit {
	border-bottom: 3px solid #4dcd70;
}
.c-lab-mor li.hit a {
	color: #4dcd70;
}
/* buttons color
-----------------------------------------------------------------------------*/
.c-btn-4dcd70 {
	background-color: #4dcd70;
}
.c-btn-4dcd70:hover {
	background-color: #45b865;
}
.c-btn-ff3 {
	background-color: #ffffff;
	color: #ff3b2d;
	border: #e1e1e1 1px solid;
}
.c-btn-ff3:hover {
	background-color: #e5e5e5;
}
.c-btn-fff {
	background-color: #ffffff;
	color: #999999;
	border: #e1e1e1 1px solid;
}
.c-btn-fff:hover {
	background-color: #e5e5e5;
}
.c-btn-fff.bgc-f3 {
	background-color: #f3f3f3;
	color: #666;
}
.c-btn-fff.bgc-fb {
	background-color: #fff;
	color: #333;
	padding: 8px 18px
}
/* css search
-----------------------------------------------------------------------------*/
.c-ser-hold {
	width: 100%;
	height: 43px;
	background-color: #e8e8e8;
	padding: 6px 10px 0 10px;
}
.c-ser-into {
	background: #fff;
	height: 28px;
	line-height: 28px;
	border: 1px solid #e1e1e1;
	border-radius: 5px;
	color: #8e8e93;
	padding: 0 8px;
}
.c-serdet {
	display: -webkit-box;
	display: box;
	padding: 7px 10px 0 10px;
}
.ser-icon {
	position: relative;
	display: inline-block;
	width: 13px;
	height: 13px;
	font-size: 1px;
	background: none;
	top: 1px;
}
.ser-icon:before,
.ser-icon:after {
	content: "";
	position: absolute;
	left: 0;
	background: transparent;
	font-size: 1px;
}
.ser-icon-search:before {
	left: 1px;
	top: 1px;
	width: 9px;
	height: 9px;
	border: 1px solid #8e8e93;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-o-border-radius: 50%;
}
.ser-icon-search:after {
	left: 9px;
	top: 11px;
	width: 5px;
	height: 1px;
	background: #8e8e93;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
}
.c-ser-back {
	width: 20px;
	-webkit-box-flex: 0;
	box-flex: 0;
	overflow: hidden;
}
.c-ser-back .si-right {
	display: block;
	width: 12px;
	height: 12px;
	border: solid #a3a3a7;
	border-width: 0 0 2px 2px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
	margin: 7px 0 0 2px;
	float: left;
}
.c-ser-main {
	-webkit-box-flex: 1;
	box-flex: 1;
	background: #fff;
	height: 28px;
	line-height: 28px;
	border: 1px solid #e1e1e1;
	border-radius: 5px;
	font-size: 15px;
	color: #8e8e93;
	position: relative;
	padding-left: 25px;
	overflow: hidden;
}
.c-ser-main i {
	position: absolute;
	left: 7px;
	top: 7px;
}
.c-ser-input {
	width: 100%;
	background: #fff;
	height: 22px;
	line-height: 22px;
	border: none;
	color: #8e8e93;
	border-radius: 5px;
	padding: 3px 0;
}
.c-ser-btn {
	margin-left: 10px;
	-webkit-box-flex: 0;
	box-flex: 0;
}
.c-ser-btn a {
	display: block;
	height: 30px;
	line-height: 30px;
	padding: 0 10px;
	background: #3aa7ed;
	color: #fff;
	font-size: 14px;
	border-radius: 4px;
}
.c-ser-canc {
	margin-left: 10px;
	-webkit-box-flex: 0;
	box-flex: 0;
}
.c-ser-canc a {
	display: block;
	height: 30px;
	line-height: 30px;
	padding: 0 5px;
}
.c-ser-main .input-clear {
	position: absolute;
	right: 6px;
	top: 6px;
	background: #7e7e7e;
	border-radius: 50%;
	width: 16px;
	height: 16px;
	text-align: center;
}
.c-ser-main .input-clear .close {
	position: relative;
	display: inline-block;
	width: 10px;
	height: 10px;
	overflow: hidden;
	top: -7px;
}
.c-ser-main .input-clear .close::before,
.c-ser-main .input-clear .close::after {
	content: '';
	position: absolute;
	height: 2px;
	width: 100%;
	top: 50%;
	left: 0px;
	margin-top: -1px;
	background: #fff;
	border-radius: 6px;
}
.c-ser-main .input-clear .close::before {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.c-ser-main .input-clear .close::after {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
body {
	background-color: #f3f3f3;
	color: #333;
	font-size: 15px;
}
.h50 {
	height: 50px;
}
.h60 {
	height: 60px;
}
.h90 {
	height: 60px;
}
.mt2 {
	margin-top: 2px;
}
.mt75 {
	margin-top: 75px;
}
.mb25 {
	margin-bottom: 25px;
}
.mr2 {
	margin-right: 2px;
}
.w-26 {
	width: 26%;
}
.w-37 {
	width: 37%;
}
.c-18c1ff {
	color: #18c1ff;
}
.c-be5f55 {
	color: #be5f55;
}
.c-585ec9 {
	color: #585ec9;
}
.c-bfbfbf {
	color: #bfbfbf;
}
.c-4dcd70 {
	color: #4dcd70;
}
.c-ff6600 {
	color: #ff6600;
}
.c-007cd9 {
	color: #007cd9;
}
.c-666 {
	color: #666;
}
.width-120 {
	width: 120px;
}
.position-fixed-b {
	left: 0;
	bottom: 0;
}
.c-nowrap-three {
	display: -webkit-box;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}
/*待解决*/
.labhold {
	width: 100%;
	height: 40px;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 600;
	background: #f3f3f3;
}
.solve-list li {
	position: relative;
}
.solve-list li.hit {
	background: #ffead4;
}
.icon-solvebg {
	display: inline-block;
	width: 67px;
	height: 19px;
	background: url(../images/solvebg.png) no-repeat;
	background-size: 100% 100%;
	-webkit-background-size: 100% 100%;
	-moz-background-size: 100% 100%;
	-ms-background-size: 100% 100%;
	position: absolute;
	right: 0;
	bottom: 0;
	text-align: center;
	font-size: 12px;
	color: #fff;
	padding-left: 16px;
}
.bookin-list .input-group-addon {
	width: 110px;
	text-align: left;
}
/* 使用说明 */
.usedb-top {
	margin-left: 15px;
	margin-right: 15px;
	background: #f5f5f5;
	line-height: 25px;
	padding: 5px 7px;
	color: #333;
}
.usedb-top .ustb {
	display: inline-block;
	width: 24px;
	height: 24px;
	line-height: 24px;
	text-align: center;
	border-radius: 7px;
	margin-right: 10px;
	font-size: 14px;
}
.usedb-top .bg-6fac45 {
	background: #6fac45;
	color: #fff;
}
.usedb-top .bg-d26d00 {
	background: #d26d00;
	color: #fff;
}
.usedb-top .bg-0c77d2 {
	background: #0c77d2;
	color: #fff;
}
.usedb-con {
	font-size: 14px;
	color: #5b5b5b;
	padding: 0 15px 0 22px;
	line-height: 23px;
}
.usedb-con p {
	margin-bottom: 10px;
	word-break: break-all;
}
.usedb-con img {
	display: block;
	margin: 5px auto;
	max-width: 100%;
}
.usedb-tit {
	padding: 0 15px 0 22px;
	line-height: 23px;
	font-weight: 700;
}
/* 提交成功 */
.succ-tip {
	text-align: center;
	color: #333;
}
.succ-tip i.icon-roundcheck {
	display: block;
	font-size: 60px;
	color: #4dcd70;
	margin: 70px 0 0 0;
}
/* 问题窗口 */
.advis-dialog {
	padding-bottom: 40px;
}
.advis-dialog .ditime {
	text-align: center;
	font-size: 12px;
	line-height: 18px;
	padding-bottom: 8px;
}
.dial-left .dialog {
	padding: 0 0 0 55px;
	position: relative;
	overflow: hidden;
}
.dial-left .dihead {
	width: 40px;
	height: 40px;
	position: absolute;
	left: 0;
	top: 0;
}
.dial-left .dihead img {
	width: 40px;
	height: 40px;
}
.dial-left .dicon {
	background: #fff;
	padding: 10px;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	color: #333;
	float: left;
	word-break: break-all;
}
.dial-left .msg-box-arr {
	position: absolute;
	left: 43px;
	top: 15px;
	display: block;
	width: 0;
	height: 0;
	border-width: 6px;
	border-style: dashed solid dashed dashed;
	border-color: transparent #a9e07d transparent transparent;
}
.dial-left .msg-box-arr i {
	position: absolute;
	left: -6px;
	top: 0;
	margin-top: -7px;
	display: block;
	width: 0;
	height: 0;
	border-width: 6px;
	border-style: dashed solid dashed dashed;
	
	border-color: transparent #fff transparent transparent;
}
.dial-right .dialog {
	padding: 0 55px 0 0;
	position: relative;
	overflow: hidden;
}
.dial-right .dihead {
	width: 40px;
	height: 40px;
	position: absolute;
	right: 0;
	top: 0;
}
.dial-right .dihead img {
	width: 40px;
	height: 40px;
}
.dial-right .dicon {
	
	background: #a9e07d;
	padding: 10px;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	color: #5b5b5b;
	float: right;
	word-break: break-all;
}
.dial-right .msg-box-arr {
	position: absolute;
	right: 43px;
	top: 15px;
	display: block;
	width: 0;
	height: 0;
	border-width: 6px;
	border-style: dashed solid dashed dashed;
	border-color: transparent transparent transparent #f1f1f1;
}
.dial-right .msg-box-arr i {
	position: absolute;
	right: -6px;
	top: 0;
	margin-top: -7px;
	display: block;
	width: 0;
	height: 0;
	border-width: 6px;
	border-style: dashed solid dashed dashed;
	border-color: transparent transparent transparent #a9e07d;
	
}
.dial-bot {
	width: 100%;
	height: 60px;
	position: fixed;
	left: 0;
	bottom: 0;
	background: #fff;
	padding: 10px 15px;
	border-top: 1px solid #d4d4d4;
}
.dial-bot a {
	line-height: 40px;
	padding: 8px 0;
	width: 48%;
	text-align: center;
}
.evalu-top {
	background: #f6f6f6;
	color: #333;
	text-align: center;
	padding: 10px 15px;
}
.evalu-top img {
	width: 35px;
	height: 35px;
	vertical-align: middle;
	margin: 0 10px 0 0;
}
.evalu-bot {
	width: 100%;
	height: 90px;
	background: #fff;
	z-index: 600;
}
.evalu-bot a.a-evalu {
	display: block;
	width: 100%;
	height: 35px;
	line-height: 35px;
	background: #d4d4d4;
	background: -webkit-linear-gradient(top, #f8f8f8, #e1e1e1);
	text-align: center;
	color: #333;
	border-top: 1px solid #d4d4d4;
	border-bottom: 1px solid #d4d4d4;
}
.b-evalu {
	position: relative;
	padding: 10px 90px 0 15px;
}
.evalutext {
	width: 100%;
	height: 35px;
	line-height: normal;
	border: 1px solid #d4d4d4;
	border-radius: 5px;
	padding: 0 5px;
	font-size: 12px;
}
.b-evalu a {
	display: block;
	width: 65px;
	height: 35px;
	line-height: 33px;
	background: #f5f5f5;
	border: 1px solid #d4d4d4;
	text-align: center;
	border-radius: 5px;
	color: #333;
	position: absolute;
	right: 15px;
	top: 10px;
}
.evalu-pop {
	position: fixed;
	width: 100%;
	background: #fff;
	left: 0;
	bottom: 0;
	z-index: 700;
	display: none;
}
.evpop-top {
	padding: 5px 15px;
	line-height: 36px;
	position: relative;
}
.evpop-texa {
	width: 100%;
	height: 100px;
	border: none;
	padding: 5px 15px;
	overflow: auto;
	font-size: 13px;
}
.evpopmb {
	width: 100%;
	height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 650;
	background: rgba(0, 0, 0, .5);
	display: none;
}
.pub-star {
	position: absolute;
	display: block;
	width: 180px !important;
	left: 55px;
	top: 11px;
}
.pub-star img {
	width: 25px;
	height: 23px;
}
/* 问药咨询 */
.medic-list {
	padding-left: 15px;
	background: #fff;
}
.medic-list li {
	border-top: 1px solid #f2f2f2;
	color: #888;
	line-height: 50px;
	position: relative;
	padding-right: 15px;
	padding-left: 90px;
}
.medic-list li .meltit {
	position: absolute;
	left: 0;
	top: 0;
}
.medic-list li .agetext {
	width: 100%;
	border: none;
	background: #fff;
	padding-right: 30px;
	line-height: normal;
}
.medic-list li .meage {
	position: absolute;
	right: 15px;
	top: 0;
}
.medic-list li .melshop {
	line-height: 24px;
	padding: 13px 30px 13px 0;
}
.sexcheck {
	display: inline-block;
	margin-right: 15px;
}
.sexcheck em {
	display: inline-block;
	width: 32px;
	height: 32px;
	line-height: 30px;
	background: #dfdfdf;
	border-radius: 50%;
	text-align: center;
	color: #fff;
	margin-left: 10px;
	vertical-align: middle;
}
.sexcheck em.checked {
	background: #29a5d3;
}
.sexcheck em.checked .icon-nan:before {
	content: "\e605";
}
.sexcheck em.checked .icon-nv:before {
	content: "\e607";
}
.sexcheck em.checked.sgirl {
	background: #ea73a8;
}
.sexcheck input[type="radio"] {
	position: absolute;
	left: 0;
	top: 0;
	width: 0;
	height: 0;
	opacity: 0;
}
.med-right {
	display: block;
	width: 50%;
	text-align: right;
	position: relative;
	float: right;
	padding-right: 20px;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.med-right i {
	position: absolute;
	right: 0;
	top: 0;
}
.medic-list li .arrow-right {
	position: absolute;
	right: 15px;
	top: 50%;
	margin-top: -5px;
}
.medic-list li .arrow-bottom {
	position: absolute;
	right: 17px;
	top: 17px;
	display: block;
	width: 8px;
	height: 8px;
	border: solid #cdcdcd;
	border-width: 2px 2px 0 0;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	-o-transform: rotate(135deg);
	transform: rotate(135deg);
}
.medic-con {
	background: #fff;
	padding: 10px 15px;
}
.medic-file li {
	display: block;
	width: 62px;
	height: 62px;
	float: left;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	margin-left: 10px;
	margin-bottom: 10px;
	color: #333;
}
.medic-file li:first-child {
	margin-left: 0;
}
.medic-file li.tipli {
	width: 200px;
	padding-top: 12px;
	line-height: 22px;
}
.file-def {
	display: inline-block;
	width: 62px;
	height: 62px;
	border: 1px dashed #a0a0a0;
	position: relative;
}
.file-def:before {
	content: '';
	display: block;
	width: 31px;
	height: 40px;
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -20px;
	border-right: 1px solid #a0a0a0;
}
.file-def:after {
	content: '';
	display: block;
	width: 40px;
	height: 31px;
	position: absolute;
	left: 50%;
	margin-left: -20px;
	top: 0;
	border-bottom: 1px solid #a0a0a0;
}
.imgnum {
	display: block;
	color: #bfbfbf;
	line-height: 15px;
	padding-top: 20px;
}
.medictexa {
	display: block;
	width: 100%;
	height: 80px;
	background: #fff;
	border: none;
	overflow: auto;
}
.medic-agree {
	color: #777
}
.medic-agree a {
	color: #0574dd;
}
/* 我的药店 */
.phar-top {
	height: 53px;
	line-height: 53px;
	background: #eff1f3;
	color: #666;
	padding: 0 15px;
}
.phar-top a {
	color: #007cd9;
	float: right;
}
.phar-list .c-avatar-m {
	width: 65px;
	height: 65px;
	margin: 13px 15px 13px 0;
}
.phar-list .c-avatar-m img {
	width: 65px;
	height: 65px;
}
.phar-list .c-list-info > p {
	font-size: 12px;
	line-height: 18px;
}
.phar-tb {
	display: inline-block;
	width: 13px;
	height: 13px;
	line-height: 13px;
	text-align: center;
	border-radius: 50%;
}
.star-tb {
	display: inline-block;
	width: 62px;
	height: 9px;
	background: url(../images/star.png) no-repeat;
	background-size: 72px 45px;
	-webkit-ackground-size: 72px 45px;
	-ms-background-size: 72px 45px;
	position: relative;
	overflow: hidden;
	margin: 1px 0;
}
.star-tb i {
	display: block;
	height: 9px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(../images/star.png) 0 -10px no-repeat;
	background-size: 72px 45px;
	-webkit-ackground-size: 72px 45px;
	-ms-background-size: 72px 45px;
}
.star-tb i.star-1 {
	width: 7.26%
}
.star-tb i.star-2 {
	width: 15.32%
}
.star-tb i.star-3 {
	width: 28.38%
}
.star-tb i.star-4 {
	width: 36.29%
}
.star-tb i.star-5 {
	width: 50%
}
.star-tb i.star-6 {
	width: 57.26%
}
.star-tb i.star-7 {
	width: 70.97%
}
.star-tb i.star-8 {
	width: 79.84%
}
.star-tb i.star-9 {
	width: 92.74%
}
.star-tb i.star-10 {
	width: 100%
}
/* 药店首页 */
.shop-top {
	width: 100%;
	height: 200px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
.shop-mess {
	background: #fff;
	position: relative;
	padding: 0 15px;
}
.shop-mess .sm-img {
	width: 75px;
	height: 75px;
	background: #fff;
	padding: 1px;
	border-radius: 50%;
	position: absolute;
	left: 15px;
	top: -37px;
}
.shop-mess .sm-img img {
	width: 75px;
	height: 75px;
	vertical-align: bottom;
}
.shop-mess .sm-atten {
	position: absolute;
	right: 15px;
	top: -35px;
	color: #fff;
}
.attenhold {
	display: inline-block;
	height: 27px;
	line-height: 27px;
	background: rgba(0, 0, 0, .75);
	padding: 0 10px;
	border-radius: 4px;
}
.attenhold .icon-guanzhu {
	font-size: 15px;
	margin-right: 5px;
	color: #ff5c3c;
}
.bstar-tb {
	display: inline-block;
	width: 72px;
	height: 12px;
	background: url(../images/star.png) 0 -20px no-repeat;
	background-size: 72px 45px;
	-webkit-ackground-size: 72px 45px;
	-ms-background-size: 72px 45px;
	position: relative;
	overflow: hidden;
	margin: 1px 0;
}
.bstar-tb i {
	display: block;
	height: 12px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(../images/star.png) 0 -33px no-repeat;
	background-size: 72px 45px;
	-webkit-ackground-size: 72px 45px;
	-ms-background-size: 72px 45px;
}
.bstar-tb i.star-1 {
	width: 8.333%
}
.bstar-tb i.star-2 {
	width: 17.36%
}
.bstar-tb i.star-3 {
	width: 29.5%
}
.bstar-tb i.star-4 {
	width: 38.89%
}
.bstar-tb i.star-5 {
	width: 50%
}
.bstar-tb i.star-6 {
	width: 59.03%
}
.bstar-tb i.star-7 {
	width: 70.14%
}
.bstar-tb i.star-8 {
	width: 79.17%
}
.bstar-tb i.star-9 {
	width: 90.28%
}
.bstar-tb i.star-10 {
	width: 100%
}
.sm-name {
	min-height: 70px;
	padding: 13px 0 13px 90px;
	line-height: 20px;
	word-break: break-all;
}
.shop-sure {
	background: #fff;
	padding: 5px 15px;
}
.shop-sure label {
	margin-right: 10px;
}
.shop-tit {
	background: #f5f5f5;
	line-height: 35px;
	padding: 0 15px;
}
.st-tb {
	display: inline-block;
	width: 24px;
	height: 24px;
	border-radius: 6px;
	text-align: center;
	line-height: 24px;
	margin-right: 8px;
}
.shop-tit .bg-007cd9 {
	background: #007cd9;
	color: #fff;
}
.shop-tit .bg-6fac45 {
	background: #6fac45;
	color: #fff;
}
.shop-tit .bg-e26d5d {
	background: #e26d5d;
	color: #fff;
}
.shop-bot {
	width: 100%;
	height: 50px;
	background: #23282c;
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 600;
}
.shop-bot a {
	display: block;
	width: 50%;
	height: 50px;
	float: left;
	line-height: 50px;
	color: #bfbfbf;
	text-align: center;
	border-left: 1px solid #3b444b;
}
.shop-bot a:first-child {
	border-left: none;
}
.shop-bot a i {
	display: inline-block;
	vertical-align: middle;
	margin: 0 5px 4px 0;
}
.ewmpop {
	width: 100%;
	height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	background: none;
	text-align: center;
	z-index: 700;
}
.ewmbox {
	display: block;
	width: 186px;
	height: 186px;
	background: #fff;
	padding: 15px;
	margin: 40px auto 15px auto;
}
.ewmbox img {
	width: 186px;
	height: 186px;
	vertical-align: bottom;
}
.ewmtip {
	display: block;
	width: 238px;
	height: 42px;
	background: url(../images/ewm-tip.png) no-repeat;
	background-size: 100% 100%;
	-webkit-background-size: 100% 100%;
	-ms-background-size: 100% 100%;
	margin: 0 auto;
}
.ewmbtn {
	display: block;
	width: 105px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	border: 1px solid #dbdbdb;
	color: #dbdbdb;
	margin: 30px auto 5px auto;
}
.ewmmb {
	width: 100%;
	height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 650;
	background: rgba(0, 0, 0, .7);
}
.pop-fullimg {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background-color: #000;
	z-index: 99999;
}
.fullimg-wrap img {
	display: block;
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 47px;
	margin: auto;
}
.fullimg-wrap .fullimg-ctrl {
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 30px;
	line-height: 30px;
}
/* 服务协议 */
.agree-box {
	line-height: 23px;
}
/* 选择城市 */
.narea-top {
	line-height: 40px;
	background: #fff;
	padding: 0 15px;
}
.narea-top i {
	color: #ff8100;
	margin: 0 5px 0 0;
}
.narea-hot ul {
	display: block;
	padding: 0 15px;
}
.narea-hot li {
	display: block;
	width: 30%;
	margin-right: 5%;
	margin-top: 10px;
	float: left;
}
.narea-hot li a {
	display: block;
	line-height: 30px;
	background: #fff;
	border: 1px solid #e1e1e1;
	border-radius: 4px;
	text-align: center;
	color: #5b5b5b;
	font-size: 13px;
	width: 100%;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.narea-hot li:nth-child(3n) {
	margin-right: 0;
}
.nhot-top {
	display: block;
	line-height: 18px;
	padding: 10px 15px 0 15px;
}
.narea-letter ul {
	display: block;
	padding: 0 5px;
	background: #fff;
	position: relative;
	z-index: 300;
}
.narea-letter ul:before {
	content: '';
	display: block;
	width: 100%;
	height: 35px;
	position: absolute;
	left: 0;
	top: 35px;
	border-top: 1px solid #e1e1e1;
	border-bottom: 1px solid #e1e1e1;
	z-index: 310;
}
.narea-letter li {
	display: block;
	float: left;
	width: 12.5%;
	height: 35px;
	line-height: 35px;
	text-align: center;
	position: relative;
	z-index: 320;
}
.narea-letter li a {
	display: block;
	line-height: 35px;
	color: #5b5b5b;
	font-size: 13px;
}
.cityletter {
	line-height: 22px;
	padding: 0 15px;
}
.narea-city ul {
	display: block;
	background: #fff;
}
.narea-city li {
	display: block;
	width: 25%;
	height: 40px;
	line-height: 40px;
	float: left;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	border-right: 1px solid #e1e1e1;
	border-bottom: 1px solid #e1e1e1;
}
.narea-hot li:nth-child(3n) {
	border-right: none;
}
.narea-city li a {
	display: block;
	text-align: center;
	color: #5b5b5b;
	font-size: 13px;
	width: 100%;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.backtop {
	display: block;
	width: 35px;
	height: 35px;
	background: url(../images/gotop.png) no-repeat;
	background-size: 100% 100%;
	-webkit-background-size: 100% 100%;
	-moz-background-size: 100% 100%;
	-ms-background-size: 100% 100%;
	position: fixed;
	right: 15px;
	bottom: 15px;
}
/*color*/
.c-92cf68 {
	color: #92cf68;
}
.c-58b5e1 {
	color: #58b5e1;
}
.c-fcc954 {
	color: #fcc954;
}
.c-c066a6 {
	color: #c066a6;
}
.c-666666 {
	color: #666666;
}
.icon-jianjie-w {
	display: inline-block;
	width: 24px;
	height: 24px;
	line-height: 24px;
	text-align: center;
	background-color: #6fac45;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
}
.lh24 {
	line-height: 24px;
}
.act-banner {
	position: relative;
}
.act-banner img {
	display: block;
	width: 100%;
	max-height: 250px;
}
.act-banner .tag-active {
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 2;
}
.act-banner .act-info {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 56px;
	background-color: rgba(0, 0, 0, .9);
	color: #fff;
}
.act-info {
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.act-tit {
	margin-right: 70px;
	display: box;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
}
.act-btn-w {
	position: absolute;
	right: 15px;
	top: 0;
	height: 100%;
	text-align: right;
	display: box;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
}
.act-btn-w .c-btn {
	padding: 0;
	width: 60px;
	height: 22px;
	line-height: 22px!important;
}
.c-f11 {
	font-size: 11px;
}
.c-a8 {
	color: #a8a8a8;
}
.tag-active {
	display: inline-block;
	width: 64px;
	height: 18px;
	background: url(../images/tag-active.png) no-repeat;
	background-size: 100% 100%;
}
.c-btn-ff8100 {
	background-color: #ff8100;
}
.c-btn-ff8100:hover {
	background-color: #e57400;
}
.c-btn-b2b2b2 {
	background-color: #b2b2b2;
}
.c-btn-b2b2b2:hover {
	background-color: #b2b2b2;
}
.shop-top>img {
	display: block;
	width: 100%;
}
.shop-top .shop-mess {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 46px;
	background-color: rgba(0, 0, 0, .5);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.shop-top .sm-name {
	min-height: auto;
	color: #fff;
	height: 46px;
}
.shop-top .bstar-tb {
	margin: 0 5px 0 0;
}
.sm-iconfont {
	position: absolute;
	right: 15px;
	top: 15px;
	text-align: right;
}
.sm-iconfont-w {
	display: inline-block;
	width: 30px;
	height: 30px;
	line-height: 30px;
	color: #fff;
	background-color: rgba(0, 0, 0, .5);
	text-align: center;
}
.phar-list .star-tb {
	display: block;
	margin: 3px 0;
}
.shop-sure ul {
	display: -webkit-box;
	display: box;
	-webkit-box-orient: horizontal;
	-webkit-box-pack: center;
}
.shop-sure li {
	-webkit-box-flex: 1;
	box-flex: 1;
}
.shop-sure li label {
	margin-right: 0;
}
.apps .pagination {
	position: absolute;
	left: 0;
	text-align: center;
	bottom: 5px;
	width: 100%;
}
.apps .swiper-container {
	height: 242px;
}
.apps .swiper-pagination-switch {
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 10px;
	background: #e4e4e4;
	margin: 0 3px;
	cursor: pointer;
}
.apps .swiper-active-switch {
	background: #4dcd70;
}
.app-list-w {
	padding: 5px 0;
}
.app-list>li {
	float: left;
	padding: 12px 0;
}
.appicon-w {
	width: 65px;
	height: 65px;
	line-height: 65px;
	margin: 0 auto;
	text-align: center;
}
.appicon-w .iconfont {
	font-size: 32px;
}
.bgc-f7b868 {
	background-color: #f7b868;
}
.bgc-cd89b9 {
	background-color: #cd89b9;
}
.bgc-fa6a85 {
	background-color: #fa6a85;
}
.bgc-ade546 {
	background-color: #ade546;
}
.bgc-51ce72 {
	background-color: #51ce72;
}
.bgc-21c1fd {
	background-color: #21c1fd;
}
.bgc-f3f3f3 {
	background-color: #f3f3f3;
}
.popup-shadow {
	padding: 0 10px;
	border: 0;
	border-radius: 10px;
	outline: 0;
	font-size: 14px;
	line-height: 1.428571429;
	color: #fff;
	overflow: hidden;
	border: 0;
	background: rgba(0, 0, 0, .5);
	-webkit-box-shadow: 0 0 3px rgba(0, 0, 0, .3);
}
.popup-shadow .ui-dialog-grid {
	padding: 5px 0;
}
/*@media (min-device-width:375px) and (-webkit-min-device-pixel-ratio:2) {
    .apps .swiper-container { height: 296px;}
    .app-list-w { padding:10px 0;}
    .appicon-w { width: 85px; height: 85px; line-height: 85px;}
    .appicon-w .iconfont { font-size:44px;}
    .apps .pagination {position: absolute; left: 0; text-align: center; bottom:5px; width: 100%;}
    .app-list>li>p { font-size:16px;}
}*/
/*2.2登录后首页*/
.icon-red {
	background: url(../images/icon-red.png) no-repeat 0 0;
	width: 26px;
	height: 26px;
	display: block;
	background-size: 100%;
}
/*2.2红包缺省页面*/
.envelope-default {
	width: 212px;
	margin: 65px auto 0;
}
.envelope-default img {
	width: 123px;
	margin: 0 45px;
}
/*2.2红包报表*/
.package-report-info {
	height: 75px;
	background-color: #fff;
}
.package-report-info li {
	float: left;
	padding: 15px 0 15px 15px;
	box-sizing: border-box;
	font-size: 13px;
}
.arrow-d {
	position: relative;
}
.border-dashed-left {
	border-left: 1px dashed #e1e1e1;
}
.arrow-d:after {
	content: "";
	border-color: transparent;
	border-style: dashed;
	border-width: 4px;
	border-top-color: #000;
	border-top-style: solid;
	position: absolute;
	top: 15px;
	left: 53px;
}
.arrow-d.every-month:after {
	left: 42px;
	top: 13px;
}
/*2.2扫描统计*/
.c-list > li.ml0 {
	margin-left: 0;
}
.c-list > li.pl15 {
	padding-left: 15px;
}
.scan-count-list li span {
	display: block;
	text-align: center;
}
.scan-count-list li .w-16 {
	width: 16%;
}
.scan-count-list li .w-18 {
	width: 18%;
}
.scan-count-list li .w-28 {
	width: 28%;
}
.scan-count-list li .w-38 {
	width: 38%;
}
.scan-count-list li .w-25 {
	width: 25%;
}
.scan-count-list li .w-15 {
	width: 15%;
}
.scan-count-list li .w-30 {
	width: 30%;
}
.scan-count-list li .w-45 {
	width: 45%;
}
.scan-count-list li .w-20 {
	width: 20%;
}
.scan-count-list li .w-40 {
	width: 40%;
}
/*扫描详情*/
.scan-detail.c-list > li {
	font-size: 13px;
	border-top: 0;
}
.scan-detail.c-list > li.c-border-t {
	border-top: 1px dashed #c9c9c9;
	padding: 18px 0;
	margin: 10px 15px 0 15px;
}
.scan-detail.c-list > .c-list-text {
	padding: 6px 15px 6px 0;
}
.scan-detail.c-list > .c-list-text {
	padding: 6px 0 6px 0;
}
.pagination span {
	margin: 0 5px;
}
.c-canc-bo {
	-webkit-box-flex: 0;
	text-align: right;
	line-height: 36px;
	white-space: nowrap;
	margin-left: 10px;
}
.c-canc-bo a {
	color: #007cd9;
}
.c-searc-bo {
	-webkit-box-flex: 1;
	box-flex: 1;
	position: relative;
	border-radius: 5px;
	padding: 0 10px;
	box-sizing: border-box;
}
.deleteer-innbtn {
	width: 54px;
	height: 54px;
	border-radius: 54px;
	margin: 0 auto;
	display: block;
	line-height: 54px;
	text-align: center;
	background: #e73750;
}
.deleteer-innbtn i {
	color: #fff;
	font-size: 25px;
}
/* 2-14信息认证 */
.bgc-6831f4 {
	background-color: #6831f4;
}
.authen-star {
	display: inline-block;
	font-size: 16px;
	vertical-align: middle;
}
.authen-tip {
	position: relative;
	padding-top: 7px;
	padding-bottom: 7px;
}
.authen-tip .authen-star {
	position: absolute;
	left: 10px;
	top: 7px;
}
.iconfont-avatar-w .icon-renzheng {
	display: inline-block;
	vertical-align: middle;
	margin-bottom: 2px;
}
.lih35 {
	line-height: 35px;
}
.authen-review {
	background-color: #fff;
	padding: 10px 0;
	border-top: 1px solid #f2f2f2;
	border-bottom: 1px solid #f2f2f2;
}
.authen-review ul {
	display: block;
	position: relative;
	overflow: hidden;
}
.authen-review ul:before {
	content: '';
	display: block;
	width: 14%;
	height: 10px;
	border-bottom: 1px dashed #ccc;
	position: absolute;
	left: 26%;
	top: 10px;
}
.authen-review ul:after {
	content: '';
	display: block;
	width: 14%;
	height: 10px;
	border-bottom: 1px dashed #ccc;
	position: absolute;
	right: 26%;
	top: 10px;
}
.authen-review li {
	display: block;
	width: 33.33%;
	float: left;
	text-align: center;
	font-size: 13px;
}
.authen-review li label {
	display: block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	border-radius: 50%;
	background-color: #ccc;
	color: #fff;
	margin: 0 auto 3px auto;
}
.authen-review li label.curr {
	background-color: #4cd964;
}
.authen-mess {
	padding: 8px 0;
	border-top: 1px solid #f2f2f2;
	border-bottom: 1px solid #f2f2f2;
}
.authen-mess li {
	border-top: none;
}
.authen-mess > .c-list-text {
	padding-top: 3px;
	padding-bottom: 3px;
	line-height: 18px;
}
.authen-mess .c-list-text .c-t-right {
	color: #bfbfbf !important;
}
.authen-form {
	padding-left: 0;
	background: #fff;
	border-top: 1px solid #f2f2f2;
	border-bottom: 1px solid #f2f2f2;
}
.authen-form .input-group.input-border {
	padding-left: 0;
}
.authen-form .input-group.input-border .input-group-addon {
	padding-left: 15px;
	border-top: 1px solid #f2f2f2;
	width: 110px;
	text-align: left;
}
.input-group .form-control,
.input-group .form-select {
	border-top: 1px solid #f2f2f2;
}
.authen-form .input-group .form-select-arrow {
	right: 15px;
}
.work-part {
	padding-top: 14px !important;
}
.authen-file {
	padding: 4px 0 20px 27px;
	line-height: 75px;
	font-size: 13px;
	color: #909090;
}
.authen-file label {
	display: inline-block;
	width: 75px;
	height: 75px;
	background: #fff;
	border: 1px solid #e1e1e1;
	position: relative;
	vertical-align: middle;
	margin-right: 15px;
	z-index: 100;
}
.authen-file label:before {
	content: '';
	display: block;
	width: 37px;
	height: 1px;
	background: #e1e1e1;
	position: absolute;
	left: 20px;
	top: 38px;
}
.authen-file label:after {
	content: '';
	display: block;
	width: 1px;
	height: 37px;
	background: #e1e1e1;
	position: absolute;
	left: 38px;
	top: 20px;
}
.authen-file label img {
	width: 75px;
	height: 75px;
	position: relative;
	z-index: 150;
}
.authen-result {
	width: 100%;
	height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	display: box;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
	font-size: 15px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding-bottom: 40px;
	line-height: 24px;
}
.authen-result a {
	color: #007cd9;
}
.authen-success {
	display: inline-block;
	width: 117px;
	height: 123px;
	background: url(../images/authen-tb1.png) no-repeat;
	background-size: 100% 100%;
	margin-bottom: 15px;
}
.authen-failed {
	display: inline-block;
	width: 123px;
	height: 133px;
	background: url(../images/authen-tb2.png) no-repeat;
	background-size: 100% 100%;
	margin-bottom: 15px;
}
.drugs-top {
	padding: 10px;
	background: #fff;
}
.drugs-mess {
	background: #fff;
	padding: 10px;
}
.drugs-img {
	overflow: hidden;
}
.drugs-img li {
	width: 33.33%;
	float: left;
	padding: 5px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.drugs-img li img {
	width: 100%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	border: 1px solid #f2f2f2;
}
.imgzoom-pack {
	width: 100%;
	height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	background: rgba(0, 0, 0, .7);
	display: none;
	z-index: 3000;
}
.imgzoom-pack:after {
	content: "";
	position: absolute;
	height: 50px;
	line-height: 50px;
	width: 100%;
	bottom: 0;
	left: 0;
	background: rgba(0, 0, 0, .5);
	z-index: 5;
}
.imgzoom-pack .imgzoom-x {
	color: #fff;
	height: 50px;
	width: 60px;
	line-height: 50px;
	text-align: center;
	font-size: 17px;
	position: absolute;
	left: 50%;
	margin-left: -35px;
	bottom: 0;
	z-index: 10;
	cursor: pointer;
}
.imgzoom-del {
	color: #fff;
	height: 50px;
	width: 60px;
	line-height: 50px;
	vertical-align: middle;
	text-align: center;
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 10;
	cursor: pointer;
}
.imgzoom-del .iconfont {
	font-size: 24px;
	color: #fff;
}
.imgzoom-pack .imgzoom-img {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	overflow: hidden;
}
.imgzoom-pack .imgzoom-img img {
	width: 100%;
	position: absolute;
	top: 50%;
}

+ 3338 - 0
html/grzx/css/zx-style.css

@ -0,0 +1,3338 @@
body {
	background: #f9f9f9;
	font-size: 14px;
}
.c-btn-maincolor {
	background-color: #37a6ed;
	color: #fff;
}
/*蓝色按钮样式*/
.c-btn-maincolor:hover {
	background-color: #3099dd;
}
.c-37a6ec {
	color: #37a6ec;
}
.c-bfbfbf {
	color: #bfbfbf;
}
.c-fa383d {
	color: #fa383d;
}
.c-007dda {
	color: #007dda;
}
.c-ff8011 {
	color: #ff8011;
}
.c-087eff {
	color: #087eff;
}
.c-ff8100 {
	color: #ff8100;
}
.c-fff {
	color: #fff;
}
.c-ccc {
	color: #ccc;
}
.c-333 {
	color: #333;
}
.bgc-00c1a5 {
	background-color: #00c1a5;
}
.bgc-ebebeb {
	background-color: #ebebeb;
}
.bgc-087eff {
	background-color: #087eff;
}
.bgc-97caff {
	background-color: #97caff;
}
.c-tag {
	color: #fff;
	font-size: 16px;
	padding: 2px 10px;
	border-radius: 4px;
}
.c-tag-blue {
	background: #3da3ee;
}
.line-22 {
	line-height: 22px;
}
.line-40 {
	line-height: 40px;
}
.mr40 {
	margin-right: 40px;
}
.r-15 {
	right: 15px;
}
.pt1 {
	padding-top: 1px;
}
.add-model .title-word-limit {
	position: absolute;
	right: 15px;
	top: 12px;
}
.arrow-left {
	display: block;
	width: 8px;
	height: 8px;
	border: solid #fff;
	border-width: 0 0 2px 2px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
/* css3-Grid
-----------------------------------------------------------------------------*/
.ui-grid {
	display: -webkit-box;
	display: box;
}
.ui-grid-middle {
	-webkit-box-pack: center;
	-webkit-box-align: center;
	box-pack: center;
	box-align: center;
}
.ui-grid-vertical {
	-webkit-box-orient: vertical;
	box-orient: vertical;
}
.ui-grid-label {
	-webkit-box-flex: 0;
	box-flex: 0;
	width: 100px;
	font-weight: 600;
}
.ui-col-0 {
	-webkit-box-flex: 0;
	box-flex: 0;
}
.ui-col-1 {
	-webkit-box-flex: 1;
	box-flex: 1;
}
/*n-list*/
.ptb12 {
	padding-top: 12px;
	padding-bottom: 12px;
}
.n-list {
	background-color: #fff;
}
.n-list > li,
.n-list > .n-list-li {
	position: relative;
	display: -webkit-box;
	display: box;
	box-pack: center;
	padding-right: 15px;
	margin-left: 15px;
	border-top: 1px solid #f1f1f1;
	clear: both;
}
.n-list > li:first-child,
.n-list > .n-list-li:first-child {
	border-top: none;
}
.n-list > .n-list-link:active {
	background-color: #f7f7f7;
	padding-left: 15px;
	margin-left: 0
}
.n-list > .n-list-cover {
	padding-left: 15px;
	margin-left: 0;
}
.n-list > .list-arrow-r,
.n-list > .list-arrow-d,
.n-list > .list-arrow-u {
	padding-right: 30px
}
.n-list > .list-arrow-r:after,
.n-list > .list-arrow-d:after,
.n-list > .list-arrow-u:after {
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -5px;
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border: solid #cdcdcd;
	border-width: 2px 2px 0 0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.n-list > .list-arrow-d:after {
	right: 13px;
	margin-top: -8px;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
}
.n-list > .list-arrow-u:after {
	right: 13px;
	margin-top: -2px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.n-list-title {
	display: -webkit-box;
	display: -moz-box;
	display: box;
	-webkit-box-orient: vertical;
	-moz-box-orient: vertical;
	box-orient: vertical;
	-webkit-box-pack: start;
	-moz-box-pack: start;
	box-pack: start;
}
.n-list-key,
.n-list-info {
	display: -webkit-box;
	display: -moz-box;
	display: box;
	-webkit-box-orient: vertical;
	-moz-box-orient: vertical;
	box-orient: vertical;
	-webkit-box-pack: center;
	-moz-box-pack: center;
	box-pack: center;
}
.n-list-info {
	display: box;
	-webkit-box-flex: 1;
	-moz-box-flex: 1;
	box-flex: 1;
}
.n-list-flex {
	display: -webkit-box;
	display: -moz-box;
	display: box;
	-webkit-box-flex: 1;
	-moz-box-flex: 1;
	box-flex: 1;
}
.n-list > .n-list-function {
	border-top: none;
	padding-right: 0;
}
.n-list > .n-list-function .n-list-flex {
	border-top: 1px solid #f1f1f1;
}
.n-list > .n-list-function:first-child .n-list-flex {
	border-top: none;
}
.n-list > li:first-child,
.n-list > .n-list-function:first-child,
.n-list > .n-list-function:first-child .n-list-info,
.n-list > div:first-child {
	border: 0;
}
.n-list > .n-list-label {
	display: block;
	border-top: none;
	padding-right: 0;
}
.n-list .n-list-img {
	width: 100px;
	height: 68px;
	overflow: hidden;
	position: relative
}
.n-list .n-list-img img {
	width: 100%;
	height: auto;
}
.required {
	position: relative;
}
.required:before {
	content: "*";
	position: absolute;
	color: #f00;
	font-size: 14px;
	height: 12px;
	line-height: 12px;
	vertical-align: middle;
	left: -10px;
	top: 50%;
	margin-top: -5px;
}
.n-avatar-s,
.n-avatar-m,
.n-avatar-l {
	width: 26px;
	height: 26px;
	display: -webkit-box;
	-webkit-box-pack: center;
	-webkit-box-align: center;
}
.n-avatar-m {
	width: 40px;
	height: 40px;
}
.n-avatar-l {
	width: 54px;
	height: 54px;
}
.n-avatar-s img,
.n-avatar-m img,
.n-avatar-l img {
	width: 100%;
	height: 100%;
}
.word-bread {
	word-wrap: break-word;
}
/* 电话咨询 */
.doc-avatar {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	text-align: center;
	overflow: hidden;
}
.doc-avatar img {
	width: auto;
	height: 100%;
}
.view-more {
	display: inline-block;
	width: 100%;
	text-align: center;
	padding: 15px 0;
}
.doc-detail .list-arrow-d:after {
	top: 15px;
	margin-top: 0;
}
.doc-detail .list-arrow-u:after {
	top: 20px;
	margin-top: 0;
}
.level,
.honor {
	display: inline-block;
	width: 20px;
	height: 20px;
}
.level img,
.honor img {
	width: 100%;
	height: 100%;
}
/* 指定咨询 */
.upload-img {
	overflow: hidden;
	display: inline-block;
}
.upload-img ul li {
	position: relative;
	display: inline;
	float: left;
	width: 76px;
	height: 76px;
	padding: 0 10px 10px 0;
}
.upload-img ul li img {
	width: 100%;
	height: 100%;
}
.upload-img .del-img {
	position: absolute;
	top: 0;
	right: 10px;
	text-align: center;
	width: 26px;
	height: 26px;
	line-height: 20px;
	z-index: 10;
	background: rgba(0, 0, 0, .5);
	border-radius: 0 0 0 90%;
	overflow: hidden;
}
.upload-img .del-img .iconfont {
	color: #fff;
	font-size: 14px;
	line-height: 14px;
	margin-left: 4px;
}
.add-btn {
	position: relative;
	display: block;
	width: 74px;
	height: 74px;
	font-size: 0;
	color: #b8b8b8;
	border: 1px dashed #a0a0a0;
	background: #fff;
}
.add-btn:before {
	content: "";
	display: block;
	position: absolute;
	top: 34px;
	left: 22px;
	width: 30px;
	height: 2px;
	background: #a0a0a0;
}
.add-btn:after {
	content: "";
	display: block;
	position: absolute;
	top: 20px;
	left: 36px;
	width: 2px;
	height: 30px;
	background: #a0a0a0;
}
.doc-tab li {
	width: 50%;
}
.doc-tab li.hit {
	border-bottom: 3px solid #4dcd70;
}
.doc-tab li.hit a {
	color: #4dcd70;
}
.doc-list-sm {
	padding: 10px 15px;
}
.doc-list-sm span {
	color: #666;
}
.doc-list-sm b {
	color: #333;
	font-weight: normal;
}
.delimgpop {
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: rgba(0, 0, 0, .8);
	text-align: center;
	z-index: 2200;
}
.del-img-box {
	width: 100%;
	height: 100%;
	display: table;
}
.del-img-con {
	display: table-cell;
	vertical-align: middle;
}
.del-img-con img {
	width: auto;
	height: auto;
	border: 2px solid #000;
}
.del-img-con p {
	position: relative;
	display: inline-block !important;
	-webkit-animation: myfirst .3s ease;
}
.del-img-box p:after {
	font-family: "iconfont" !important;
	content: "\d605";
	position: absolute;
	display: block;
	top: 5px;
	right: 10px;
	width: 32px;
	height: 32px;
	z-index: 5000;
	color: #fff;
	font-size: 32px;
	font-style: normal;
	-webkit-font-smoothing: antialiased;
	-webkit-text-stroke-width: 0.2px;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-shadow: 0 0 1px #f00;
	text-shadow: 0 0 1px #000;
}
.del-img-btn {
	display: inline-block;
	height: 40px;
	line-height: 40px;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 20;
	padding: 0 15px;
	text-align: right;
	color: #000;
}
.del-img-btn .iconfont {
	font-size: 20px;
	margin-right: 4px;
}
.r-input {
	width: 100%;
	text-align: right;
}
.r-textarea {
	width: 100%;
	border: 0;
	padding: 0;
	resize: none;
}
.over-lay,
.over-lay[id] {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 3000;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .7);
}
.ins-img-btn {
	position: fixed;
	width: 100%;
	bottom: 0;
	left: 0;
	z-index: 3100;
}
.ins-img-btn .c-btn {
	border-radius: 4px;
	border: none;
	color: #157efb;
	font-size: 20px;
}
.ins-img-btn .c-btn:first-child {
	border-radius: 4px 4px 0 0;
}
.ins-img-btn .c-btn:nth-child(2) {
	border-top: 1px solid #e1e1e1;
	border-radius: 0 0 4px 4px;
}
.zx-notes {
	text-align: left;
	color: #5b5b5b;
	font-size: 12px;
}
.ui-popup .zx-notes li {
	padding: 0 !important;
	margin: 0 !important;
}
/* 咨询信息 */
.talk-box {
	position: relative;
	width: 100%;
	padding: 10px;
	background: #fff;
	border-radius: 5px;
	border: 1px solid #e6bc5d;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.talk-box:after {
	position: absolute;
	content: "";
	top: -6px;
	left: 30px;
	font-size: 13px;
	color: #5b5b5b;
	width: 10px;
	height: 10px;
	border: 1px solid #e6bc5d;
	border-width: 1px 1px 0 0;
	background: #fff;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.icon-round {
	display: inline-block;
	width: 24px;
	height: 24px;
	text-align: center;
	line-height: 24px;
	vertical-align: middle;
	color: #fff;
	font-size: 14px;
	border-radius: 50%;
	overflow: hidden;
}
.upload-img ul li.upload-btn-box {
	width: 240px;
	height: 76px;
}
.upload-img ul li.upload-btn-box p {
	width: 150px;
	font-size: 13px;
	color: #5b5b5b;
	display: block;
	padding: 18px 0 0 10px;
}
.pingjia {
	font-size: 13px;
	color: #ff8100;
}
.pingjia .iconfont {
	font-size: 20px;
	line-height: 20px;
	color: #ff8100;
}
.bottom-iconbtn {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 44px;
	border-top: 1px solid #e1e1e1;
	background: #fff;
	z-index: 1000;
}
.bottom-iconbtn a {
	display: inline-block;
	width: 49%;
	height: 44px;
	line-height: 44px;
	text-align: center;
	vertical-align: middle;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-right: 1px solid #e1e1e1;
	overflow: hidden;
}
.bottom-iconbtn a:last-child {
	border: none;
}
.bottom-iconbtn a .iconfont {
	font-size: 18px;
	line-height: 18px;
	vertical-align: middle;
}
.sel-phiz {
	overflow: hidden;
}
.sel-phiz li {
	width: 33.33%;
	float: left;
	text-align: center;
	color: #333;
	font-size: 15px;
}
.sel-phiz li .iconfont {
	font-size: 40px;
	line-height: 40px;
	color: #ccc;
}
.sel-phiz li p {
	line-height: 1.1;
}
.padding-fixed {
	width: 100%;
	height: 70px;
}
.tel-zx-list>li .n-list-key {
	min-width: 6em;
}
.sel-phiz li i {
	display: inline-block;
	background: url(../images/sel-phiztb.png) no-repeat;
	background-size: 126px 92px;
}
.sel-phiz li i.icon-flower {
	width: 42px;
	height: 46px;
	background-position: 0 0;
}
.sel-phiz li i.icon-flag {
	width: 44px;
	height: 46px;
	background-position: -42px 0;
}
.sel-phiz li i.icon-gife {
	width: 39px;
	height: 46px;
	background-position: -87px 0;
}
.sel-phiz li.selected i.icon-flower {
	background-position: 0 -46px;
}
.sel-phiz li.selected i.icon-flag {
	background-position: -42px -46px;
}
.sel-phiz li.selected i.icon-gife {
	background-position: -87px -46px;
}
/*爱心咨询*/
.common-title {
	font-size: 12px;
	padding: 10px 15px;
	color: #5b5b5b;
}
.ax-consultation li {
	position: relative;
}
.ax-consultation select,
.ax-consultation input {
	color: #909090 !important;
}
.ax-consultation li input.short {
	border: 1px solid #000;
	width: 50%;
	box-sizing: border-box;
}
.ax-consultation li .input-group .form-select {
	height: 30px;
	box-sizing: border-box;
	padding: 2px 13px 2px 5px;
}
.ax-consultation li .form-select-arrow {
	top: 9px;
	right: 7px;
}
.ax-consultation li .c-list-value h4 {
	min-width: 4em;
}
.ax-consultation li .input-group {
	position: relative;
}
.arrow-down {
	display: block;
	width: 8px;
	height: 8px;
	border: solid #cdcdcd;
	border-width: 2px 2px 0 0;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	-o-transform: rotate(135deg);
	transform: rotate(135deg);
}
.ax-consultation li .list-icon {
	position: absolute;
	right: 15px;
	top: 50%;
	margin-top: -4px;
}
.ax-consultation li .input-group .list-icon {
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -4px;
}
.pl40 {
	padding-left: 40px;
}
.ml40 {
	margin-left: 40px;
}
.ax-consultation li .input-group-addon {
	padding: 0 10px;
}
.pm_age {
	display: inline-block;
	width: 138px;
	height: 30px;
	border: 1px solid #ddd;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	vertical-align: middle;
	overflow: hidden;
	position: relative;
}
.ageinput {
	width: 65px;
	height: 30px;
	line-height: 30px;
	background: #fff;
	border: none;
	float: left;
	font-size: 15px;
	color: #333;
	border-right: 1px solid #ddd;
	padding-left: 10px;
	border-radius: 5px 0 0 5px;
}
.pm_age .agesel {
	width: 60px;
	height: 30px;
	line-height: 30px;
	float: left;
	font-size: 15px;
	color: #808080;
	border: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-family: "\5FAE\8F6F\96C5\9ED1", Helvetica;
	background: url(/images/point_d.png) 94% center no-repeat #fff;
	background-size: 13px 8px;
	-webkit-background-size: 13px 8px;
	padding: 0 0 0 10px;
}
.pt2 {
	padding-top: 2px;
}
/*问医生*/
.bg-9dcd82 {
	background: #9dcd82;
}
.bg-ff7aac {
	background: #ff7aac;
}
.bg-8ebcf8 {
	background: #8ebcf8;
}
.bg-ffbc16 {
	background: #ffbc16;
}
.ask-doctors-boxer .c-avatar-m i {
	width: 40px;
	height: 40px;
	border-radius: 40px;
	text-align: center;
	line-height: 40px;
	display: block;
	color: #fff;
	font-size: 24px;
}
.ask-doctors-boxer .tiper-words {
	width: 100%;
	box-sizing: border-box;
}
.ask-doctors-boxer .tiper-words img {
	width: 100%;
}
/*专家列表*/
.professor-listhead {
	height: 45px;
	background: #fff;
	width: 100%;
	z-index: 99;
	position: fixed;
	bottom: 0;
	left: 0;
}
.professor-listhead li {
	float: left;
	line-height: 45px;
	box-sizing: border-box;
	border-right: 1px solid #f2f2f2;
	text-align: center;
	color: #5b5b5b;
	font-size: 14px;
	height: 45px;
}
.professor-listhead li span {
	text-overflow: ellipsis;
	overflow: hidden;
	height: 45px;
	line-height: 45px;
	white-space: nowrap;
	max-width: 80%;
	display: inline-block;
	position: relative;
	padding: 0 15px 0 0;
	box-sizing: border-box;
}
.professor-listhead li:last-child {
	border: none;
}
.professor-listhead li em.cur {
	color: #37a6eb;
}
.professor-listhead li i {
	display: block;
	position: absolute;
	top: 20px;
	right: 0;
}
.professor-listhead li.cur i.s-arrow-down {
	width: 0;
	height: 0;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 5px solid #b4b4b4;
	border-top: 0;
}
.s-arrow-down {
	width: 0;
	height: 0;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 5px solid #b4b4b4;
	border-top: 0;
}
.professor-main .c-avatar-m {
	padding: 6px 0 6px;
}
.professor-main .c-avatar-m img {
	border-radius: 40px;
	overflow: hidden;
	width: 40px;
	height: 40px;
}
.professor-main .c-list-indent-s {
	padding-right: 15px !important;
}
.pt35 {
	padding-top: 35px;
}
.c-ff8100 {
	color: #ff8100;
}
.professor-main .c-5b5b5b {
	color: #5b5b5b !important;
}
.list-addmore {
	color: #007cd9;
	font-size: 13px;
	width: 100%;
	text-align: center;
	line-height: 34px;
}
.professor-main .c-list-info {
	padding: 6px 0 6px;
}
.professor-main li {
	padding-left: 15px !important;
	margin-left: 0 !important;
}
/*专家列表iscroll*/
.shadow-panel {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 45px;
	width: 100%;
	z-index: 90;
	background-color: rgba(0, 0, 0, .35);
}
.scroll-fixed {
	position: fixed;
	bottom: 45px;
	left: 0;
	z-index: 98;
}
.scroll-citybox,
.scroll-hospbox {
	width: 100%;
	height: 352px;
	overflow: hidden;
}
.scroll-specbox {
	width: 100%;
	height: 352px;
	overflow: hidden;
}
.scroll-citybox li,
.scroll-hospbox li {
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}
.city-box-leftwrapper {
	width: 40%;
	background: #f5f5f5;
}
.city-box-rightwrapper {
	width: 60%;
	background: #ffffff;
}
.hosp-box-leftwrapper {
	width: 50%;
	background: #f5f5f5;
}
.hosp-box-rightwrapper {
	width: 50%;
	background: #ffffff;
}
.spec-box-leftwrapper {
	width: 100%;
	background: #ffffff;
	font-size: 14px;
}
.cc-lef li {
	padding: 11px 20px;
	color: #5b5b5b;
	font-size: 14px;
	border-right: 1px solid #e1e1e1;
	border-bottom: 1px solid #e1e1e1;
	width: 100%;
	box-sizing: border-box;
}
.cc-lef li:last-child {
	border-bottom: none;
}
.cc-lef li span {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	white-space: normal;
	overflow: hidden;
}
.cc-rig li {
	margin-left: 15px;
	border-bottom: 1px solid #e1e1e1;
	height: 43px;
	line-height: 43px;
	color: #5b5b5b;
	font-size: 14px;
}
.cc-rig li:last-child {
	border-bottom: none;
}
.cc-lef li.cur {
	background: #fff;
	border-right: 1px solid #fff;
}
.cc-rig li.cur {
	color: #37a6eb;
}
.city-box-leftwrapper,
.city-box-rightwrapper,
.hosp-box-leftwrapper,
.hosp-box-rightwrapper,
.spec-box-leftwrapper {
	float: left;
	position: relative;
	height: 352px;
	overflow: hidden;
	/* Prevent native touch events on Windows */
	-ms-touch-action: none;
	/* Prevent the callout on tap-hold and text selection */
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	/* Prevent text resize on orientation change, useful for web-apps */
	-webkit-text-size-adjust: none;
	-moz-text-size-adjust: none;
	-ms-text-size-adjust: none;
	-o-text-size-adjust: none;
	text-size-adjust: none;
}
.city-leftscroller,
.city-rightscroller,
.hosp-leftscroller,
.hosp-rightscroller,
.spec-leftscroller {
	position: absolute;
	width: 100%;
	/* Prevent elements to be highlighted on tap */
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	/* Put the scroller into the HW Compositing layer right from the start */
	-webkit-transform: translateZ(0);
	-moz-transform: translateZ(0);
	-ms-transform: translateZ(0);
	-o-transform: translateZ(0);
	transform: translateZ(0);
}
.shadow-panel {
	display: none;
}
.spec-leftscroller div.c-33 {
	color: #5b5b5b;
	float: left;
	box-sizing: border-box;
	border-right: 1px solid #e1e1e1;
	border-bottom: 1px solid #e1e1e1;
	text-align: center;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	height: 36px;
	line-height: 36px;
	font-size: 14px;
}
.spec-leftscroller div.c-33.cur {
	color: #37a6eb;
}
.main-scrollboxer {
	-webkit-overflow-scrolling: touch;
}
/*医生列表搜索无数据*/
.search-nodata {
	width: 100%;
	font-size: 16px;
	color: #5b5b5b;
	text-align: center;
	padding: 100px 0 40px 0;
}
.search-nodata-img {
	width: 40%;
	max-width: 320px;
	margin: 0 auto;
}
.search-nodata-icon {
	background: url(../images/no-data.png) no-repeat 100% 0;
	width: 100%;
	height: 0;
	padding-bottom: 100%;
	background-size: 100% auto;
}
/*网络咨询详情页*/
.c-avatar-m {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	overflow: hidden;
}
.doctor_detail_intro {
	font-size: 15px;
	background: #fff;
	margin-top: 20px;
}
.doctor_detail_intro .tit {
	color: #909090;
	display: inline-block;
	float: left;
	width: 75px;
}
.doctor_detail_intro .tit2 {
	color: #909090;
	display: inline-block;
	float: left;
	width: auto;
}
.doctor_detail_intro .words {
	-webkit-box-flex: 1;
	box-flex: 1;
	display: box;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
	padding-right: 15px;
	box-sizing: border-box;
	color: #333;
	overflow: hidden;
}
.doctor_detail_intro .main_good_at,
.doctor_detail_intro .main_intro {
	margin-left: 15px;
	padding: 15px 0
}
.report-img,
.report-img img {
	width: 70px;
	height: 70px;
	float: left;
	margin-right: 10px;
}
.time-title {
	width: 22px;
	height: 22px;
	border-radius: 50%;
	line-height: 20px;
	text-align: center;
	display: inline-block;
	background-color: #4dcd70
}
.time-title i,
iconfont {
	font-size: 13px;
}
.review {
	width: 100%;
	margin-top: 10px;
}
.review .hd {
	height: 5px;
	position: relative;
}
.review .hd .ui-arrow {
	position: absolute;
	top: -5px;
	left: 10px;
	border-bottom-color: #ff8100;
}
.review .hd .ui-arrow s {
	top: -4px;
}
.review .bd {
	border: 1px solid #ff8100;
	padding: 10px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
/*电话咨询记录*/
.doctor_detail_intro .record-tit {
	color: #909090;
	display: inline-block;
	float: left;
	width: 85px;
}
.no-record {
	text-align: center;
	line-height: 23px;
	padding: 0 15px;
}
.icon-record {
	display: inline-block;
	width: 125px;
	height: 125px;
	background: url(../images/no-data.png) no-repeat;
	background-size: 100% 100%;
	-webkit-background-size: 100% 100%;
	-moz-background-size: 100% 100%;
	-ms-background-size: 100% 100%;
	margin: 60px 0 5px 0;
}
/*电话咨询-登记成功*/
.win-register {
	text-align: center;
}
.win-register i,
iconfont {
	font-size: 60px;
}
.b-height {
	height: 80px;
}
.s-height {
	height: 40px;
	line-height: 40px;
	text-align: center
}
.c-49 {
	width: 49%
}
/*确认就诊人信息*/
.demo-input-merge .input-group-addon {
	min-width: 90px;
	width: 90px;
	text-align: left;
}
.l-span {
	top: 17px;
	left: 0px;
	position: absolute;
	color: #f00
}
.words-box {
	padding-top: 8px;
	border-top: 1px solid #e1e1e1;
}
.words-box .form-textarea2 {
	height: 100px;
	border: 0px;
	resize: none
}
.input-merge .input-group.input-border .input-group-addon,
.input-merge .input-group.input-border .form-control,
.input-merge .input-group.input-border .form-select,
.input-merge .input-group.input-border .form-textarea,
.input-merge .input-group.input-border .form-control,
.input-merge .input-group.input-border .form-select,
.input-merge .input-group.input-border .form-textarea,
.input-merge .input-group.input-border .input-group-addon {
	border-radius: 0px;
}
.input-merge .input-group.input-border {
	padding-left: 15px;
}
.input-merge .input-group.input-border .input-group-addon {
	padding-left: 0
}
.t-14 {
	top: 14px;
}
.t-12 {
	top: 12px;
	position: absolute;
	color: #ff8100;
}
.words-box .form-textarea2::-webkit-input-placeholder,
.words-box .r-textarea::-webkit-input-placeholder {
	color: #bfbfbf;
}
.words-box .form-textarea2:-moz-placeholder,
.words-box .r-textarea:-moz-input-placeholder {
	color: #bfbfbf;
}
.words-box .form-textarea2:-ms-input-placeholder,
.words-box .r-textarea:-ms-input-placeholder {
	color: #bfbfbf;
}
.number-r-b {
	right: 15px;
	bottom: -15px;
	position: absolute;
}
/*网络咨询*/
.hz-header {
	height: 45px;
	background: #fff;
}
.hz-header li {
	font-size: 13px;
	color: #5b5b5b;
}
.hz-header li.cur {
	border-bottom: 2px solid #37a6ed;
}
.hz-header li.cur span {
	color: #007cd9;
}
.hz-header li span {
	margin: 12px 0;
	border-right: 1px solid #e1e1e1;
	text-align: center;
	display: block;
	box-sizing: border-box;
}
.visit-list {}
.visit-list li {
	border-top: 1px solid #e1e1e1;
	border-bottom: 1px solid #e1e1e1;
	background: #fff;
	padding-left: 15px;
	margin-top: 15px;
}
.visit-list li .vlname {
	line-height: 45px;
	border-bottom: 1px solid #f2f2f2;
	position: relative;
	padding-right: 15px;
}
.visit-list li .vlname .arrow-right {
	position: absolute;
	right: 15px;
	top: 50%;
	margin-top: -4px;
}
.visit-list li .vlcard {
	line-height: 40px;
	color: #bfbfbf;
	padding-right: 15px;
}
.c-btn-r,
.c-btn-full-r {
	display: inline-block;
	zoom: 1;
	*display: inline;
	vertical-align: baseline;
	outline: none;
	cursor: pointer;
	border: 0;
	background: none;
	text-align: center;
	text-decoration: none;
	padding: 5px 10px;
	color: #fff;
	position: relative;
	font: 14px/1 \5FAE\8F6F\96C5\9ED1, tahoma, arial, \5b8b\4f53;
	line-height: normal !important;
	background-color: #37a6ec;
	border-radius: 4px;
}
.r-w100 {
	width: 100px;
	text-align: right;
}
.bgc-fffae8 {
	background: #fffae8;
}
.pb3 {
	padding-bottom: 3px;
}
.pb2 {
	padding-bottom: 2px;
}
.c-ser-btn a {
	height: 28px;
	line-height: 28px;
	border: 1px solid #e8e8e8;
}
.c-avatar-s img,
.c-avatar-m img,
.c-avatar-l img {
	width: 100%;
	height: auto;
}
.test-boxer .c-avatar-m {
	text-align: center;
	padding: 0;
}
.test-boxer .c-avatar-m img {
	width: auto;
	height: 100%;
	border-radius: 0;
}
/*2015.11.9*/
.scroll-include {
	height: 260px;
	overflow: hidden;
}
@media (device-height:480px) and (-webkit-min-device-pixel-ratio:2) {
	/* 兼容iphone4/4s */
	.scroll-include {
		height: 200px;
	}
}
/*2015.11.18*/
.c-nowrap.c-f16 {
	font-size: 16px !important;
}
/*2.12专家列表*/
.c-ser-main i.left-42 {
	left: 42%;
}
.professor-listhead.professor-list-listhead {}
.professor-list-btn {
	height: 28px;
	line-height: 28px;
	border-radius: 4px;
	padding: 5px 10px;
	margin-left: 10px;
}
/*2.12编辑模板*/
.list-arrow-r.ml0 {
	margin-left: 0;
}
/*2.12回复模块*/
.icon-look {
	background: url(../images/icon-look.png) no-repeat 0 0;
	background-size: 100%;
	width: 22px;
	height: 23px;
	display: block;
	margin: 10px auto 0;
}
.talk-box.reply-talk-box {
	padding: 0;
	border-color: #e1e1e1;
}
.talk-box.reply-talk-box:after {
	border-color: #e1e1e1;
	left: 15px;
}
.talk-box.reply-talk-box.right:after {
	right: 15px;
	left: auto;
}
.reply-talk-box.n-list>li {
	padding-left: 15px;
	margin-left: 0;
	border-top: 0;
}
.reply-talk-box .look-report li {
	float: left;
	width: 57px;
	text-align: center;
}
.reply-talk-box .look-report li div {
	height: 56px;
	border: 1px solid #e3e3e3;
}
.icon-homan {
	display: block;
	background: #e1e1e1 url(../images/icon-homan.png) no-repeat 50% 50%;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-size: 50%;
}
.btn-voice {
	background: url(../images/btn-voice.jpg) no-repeat 0 0;
	background-size: 100%;
	width: 85px;
	height: 34px;
	display: block;
}
.icon-reply {
	width: 15px;
	height: 15px;
	display: block;
	background: url(../images/icon-reply.jpg) no-repeat 0 0;
	background-size: 100%;
}
.icon-broadcast {
	background: url(../images/icon-broadcast.png) no-repeat 0 0;
	background-size: 100%;
	width: 12px;
	height: 16px;
}
.icon-border {
	width: 1px;
	height: 14px;
	margin: 5px 12px 0;
	background-color: #ddd;
}
.reply-title {
	position: relative;
	background: #97caff;
	color: #fff;
	font-size: 14px;
	padding: 10px 0;
	padding-left: 25px;
}
.reply-title:after {
	position: absolute;
	top: 50%;
	left: 15px;
	margin-top: -5px;
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border: 1px solid #fff;
	border-width: 0 0 2px 2px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.c-tag-blue.c-f13 {
	font-size: 13px;
}
/*2.12关注*/
.heed {
	background: url(../images/heed.png) no-repeat 0 0;
	background-size: 100%;
	width: 26px;
	height: 26px;
	display: block;
	margin: 0 auto 5px;
}
.heed-orange {
	background: url(../images/heed-orange.png) no-repeat 0 0;
	background-size: 100%;
	width: 26px;
	height: 26px;
	display: block;
	margin: 0 auto 5px;
}
#heed,
#heed-orange {
	width: 40px;
	text-align: center;
	padding-top: 12px;
}
.pm_age .agesel.w-70 {
	width: 70px;
}
/*2.12回复录音*/
.win-broadcast {
	position: fixed;
	outline: 0px;
	top: 50%;
	left: 50%;
	margin: -113px 0 0 -135px;
	width: 269px;
	height: 226px;
	border-radius: 5px;
	z-index: 100;
}
.win-broadcast .bg {
	background-color: #fff;
	width: 269px;
	height: 226px;
	border-radius: 5px;
	display: block;
}
.win-broadcast .broadcast {
	background: url(../images/broadcast.png) no-repeat 0 -2px;
	width: 85px;
	height: 85px;
	display: block;
	background-size: 100%;
	position: absolute;
	top: 67px;
	left: 34%;
	border-radius: 50%;
	z-index: 99;
}
.win-broadcast .word {
	position: absolute;
	bottom: 0;
	border-radius: 5px;
	border-top: 1px solid #e1e1e1;
	border-top-right-radius: 0;
	border-top-left-radius: 0;
	color: #666;
	background-color: #fff;
	height: 35px;
	width: 100%;
	line-height: 35px;
}
.win-broadcast .word.title {
	top: 0;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}
.delete {
	display: block;
	position: absolute;
	height: 12px;
	width: 12px;
	border-radius: 50%;
	background-color: #fff;
	right: 6px;
	top: 6px;
	z-index: 10;
	text-align: center;
	line-height: 9px;
	color: #919191;
	font-size: 12px;
}
.broadcast-shadow-panel {
	width: 100%;
	position: absolute;
	overflow: hidden;
	z-index: 10;
	top: 0;
	background-color: rgba(0, 0, 0, .35);
}
/*动画*/
.win-broadcast .broadcast {
	animation: broadcast 2s infinite;
	-webkit-animation: broadcast 2s infinite;
	/* Safari 和 Chrome */
}
@-webkit-keyframes broadcast
{
	0% {
		background-color: #ccf5ff;
		box-shadow: 0 0 0 0px #ccf5ff, 0 0 0 0 #c3e9f2, 0 0 0 0px #e9fffe, 0 0 0 0 #ddf5f4;
	}
	25% {
		background-color: #ccf5ff;
		box-shadow: 0 0 0 5px #ccf5ff, 0 0 0 1px #c3e9f2, 0 0 0 20px #e9fffe, 0 0 0 1px #ddf5f4;
	}
	50% {
		background-color: #ccf5ff;
		box-shadow: 0 0 0 10px #ccf5ff, 0 0 0 1px #c3e9f2, 0 0 0 25px #e9fffe, 0 0 0 1px #ddf5f4;
	}
	100% {
		background-color: #ccf5ff;
		box-shadow: 0 0 0 15px #ccf5ff, 0 0 0 1px #c3e9f2, 0 0 0 30px #e9fffe, 0 0 0 1px #ddf5f4;
	}
}
/* 12-18 */
.nxz-voice {
	line-height: 21px;
	text-align: right;
}
.nzx-tb {
	display: inline-block;
	width: 15px;
	height: 21px;
	background: url(../images/icon-broadcast.png) no-repeat;
	background-size: 100% auto;
	-webkit-background-size: 100% auto;
	-moz-background-size: 100% auto;
	-ms-background-size: 100% auto;
	vertical-align: middle;
}
.win-broadcast-mb {
	width: 100%;
	height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 10;
	background: rgba(0, 0, 0, .35);
	display: none;
}
.myorder li .vlname {
	line-height: 20px;
	border-bottom: 1px solid #f2f2f2;
	position: relative;
	padding-right: 15px;
	padding-top: 10px;
	padding-bottom: 10px;
}
/* 1-12 */
.myaks-top {}
.myaks-top li {
	background: #fff;
	border-top: 1px solid #e1e1e1;
	border-bottom: 1px solid #e1e1e1;
	margin-top: 10px;
}
.myaks-top li:first-child {
	margin-top: 0;
}
.mt-mess {
	margin-left: 10px;
	padding: 10px 0;
}
.mt-con {
	margin-left: 10px;
	padding: 10px 10px 10px 0;
	border-top: 1px solid #f2f2f2;
}
.mtime {
	line-height: 25px;
}
.mtime em {
	display: inline-block;
	width: 14px;
	height: 14px;
	background: url(../images/sex.png) no-repeat;
	background-size: 29px 14px;
	vertical-align: middle;
	margin: 0 5px 5px 0;
}
.mtime em.sex-male {
	background-position: 0 0;
}
.mtime em.sex-female {
	background-position: -15px 0;
}
.msympt {
	position: relative;
	padding-left: 40px;
	min-height: 20px;
}
.msympt h4 {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	color: #909090;
}
.mt-state {
	line-height: 40px;
	text-align: center;
	border-top: 1px solid #f2f2f2;
	color: #17b3ec;
}
.mreport-list .c-list-link .c-list-value {
	padding-right: 0;
}
.h35 {
	height: 35px;
}
.myask-lab {
	width: 100%;
	height: 35px;
	background: #fff;
}
.myask-lab li {
	display: block;
	width: 33.33%;
	float: left;
	font-size: 13px;
	color: #5b5b5b;
	line-height: 34px;
	text-align: center;
	position: relative;
	z-index: 600;
}
.labfixed {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 600;
}
.myask-lab li.curr {
	border-bottom: 2px solid #17b3ec;
	color: #17b3ec;
}
.myask-lab:before {
	content: '';
	display: block;
	width: 33.33%;
	height: 22px;
	position: absolute;
	left: 33.33%;
	top: 6px;
	border-left: 1px solid #f2f2f2;
	border-right: 1px solid #f2f2f2;
	z-index: 500;
}
.myask-visit li {
	margin-top: 10px;
}
.myask-visit li:first-child {
	margin-top: 0;
}
/* 再次咨询弹窗 */
.botpop {
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	z-index: 700;
	-webkit-animation: choopop .2s ease;
	animation: choopop .2s ease;
	display: none;
}
@-webkit-keyframes choopop {
	0% {
		bottom: -200px;
	}
	100% {
		bottom: 0px;
	}
}
@keyframes choopop {
	0% {
		bottom: -200px;
	}
	100% {
		bottom: 0px;
	}
}
.botpop li {
	line-height: 50px;
	background: #fff;
	border-top: 1px solid #f2f2f2;
	padding: 0 15px;
}
.botpop li.curr {
	color: #17b3ec;
}
.botpopmb {
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .4);
	position: fixed;
	left: 0;
	top: 0;
	z-index: 650;
	display: none;
}
/* index */
.bgc-f3f3f3 {
	background-color: #f3f3f3;
}
.bor-f2-r {
	border-right: 1px solid #f2f2f2;
}
.bor-f2-b {
	border-bottom: 1px solid #f2f2f2;
}
.bor-f2-tb {
	border-top: 1px solid #f2f2f2;
	border-bottom: 1px solid #f2f2f2;
}
.lih43 {
	line-height: 43px;
}
.icon-mindex {
	display: inline-block;
	background: url(../images/icon-mindex.png) no-repeat;
	background-size: 250px 250px;
	vertical-align: text-top;
}
.icon-mpart1 {
	width: 91px;
	height: 100px;
	background-position: 0 0;
	margin-bottom: 5px;
}
.icon-mpart2 {
	width: 49px;
	height: 40px;
	background-position: -95px 0;
	margin-top: -21px;
}
.icon-mpart3 {
	width: 40px;
	height: 39px;
	background-position: -150px 0;
	margin-bottom: 2px;
}
.icon-mpart4 {
	width: 41px;
	height: 39px;
	background-position: -195px 0;
	margin-bottom: 2px;
}
.icon-msearch {
	width: 15px;
	height: 15px;
	background-position: 0 -155px;
	margin: 1px 5px 0 0;
}
.mindex-search {
	width: 100%;
	padding: 8px 7px;
	background-color: #fff;
}
.mindex-search div {
	height: 27px;
	line-height: 27px;
	background-color: #f2f2f2;
	border-radius: 3px;
}
.mindex-search div {
	position: relative;
	padding: 0 10px 0 30px;
}
.mindex-search .icon-msearch {
	position: absolute;
	left: 8px;
	top: 5px;
}
.mindex-search .search-text {
	display: block;
	width: 100%;
	height: 100%;
	background-color: #f2f2f2;
	appearance: none;
	-webkit-appearance: none;
	border-radius: 3px;
}
.mindex-top {
	background: #fff;
	line-height: 20px;
	height: 187px;
}
.mt-center {
	display: box;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
	text-align: center;
}
.mt-part1-1 {
	width: 47%;
	height: 100%;
	float: left;
}
.mt-part1-2 {
	width: 53%;
	height: 100%;
	float: left;
}
.mt-part2 {
	width: 100%;
	height: 50%;
}
.mt-part3 {
	width: 50%;
	height: 100%;
	float: left;
}
.mt-freeask {
	display: inline-block;
}
.mindex-img {
	position: relative;
}
.mindex-img .bd li {
	display: block;
	width: 100%;
	height: 61px;
}
.mindex-img .bd li img {
	width: 100%;
	height: 100%;
}
.mindex-img .hd {
	position: absolute;
	height: 7px;
	line-height: 7px;
	bottom: 5px;
	left: 50%;
	font-size: 1px;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.mindex-img .hd li {
	display: inline-block;
	width: 7px;
	height: 7px;
	line-height: 7px;
	background: #cacaca;
	border-radius: 50%;
	margin: 0 5px;
	font-size: 0px;
	overflow: hidden;
	color: #cacaca;
}
.mindex-img .hd li.on {
	background: #17b3ec;
	color: #17b3ec;
}
.mindex-list {
	background-color: #fff;
}
.mindex-list li {
	display: block;
	width: 25%;
	height: 80px;
	float: left;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	display: box;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
	text-align: center;
	border-right: 1px solid #f2f2f2;
	border-top: 1px solid #f2f2f2;
	color: #909090;
}
.mindex-list li:nth-child(4n) {
	border-right: 0;
}
.mindex-list li i {
	width: 25px;
	height: 25px;
}
.icon-mlist3 {
	background-position: 0 -105px;
}
.icon-mlist4 {
	background-position: -25px -105px;
}
.icon-mlist5 {
	background-position: -50px -105px;
}
.icon-mlist80 {
	background-position: -75px -105px;
}
.icon-mlist10 {
	background-position: -100px -105px;
}
.icon-mlist11 {
	background-position: -125px -105px;
}
.icon-mlist12 {
	background-position: -150px -105px;
}
.icon-mlist19 {
	background-position: -175px -105px;
}
.icon-mlist13 {
	background-position: -200px -105px;
}
.icon-mlist50 {
	background-position: -225px -105px;
}
.icon-mlist16 {
	background-position: 0 -130px;
}
.icon-mlist54 {
	background-position: -25px -130px;
}
.icon-mlist27 {
	background-position: -50px -130px;
}
.icon-mlist14 {
	background-position: -75px -130px;
}
.icon-mlist21 {
	background-position: -100px -130px;
}
.icon-mlist52 {
	background-position: -125px -130px;
}
.icon-mlist15 {
	background-position: -150px -130px;
}
.icon-mlist81 {
	background-position: -175px -130px;
}
.icon-mlist78 {
	background-position: -200px -130px;
}
.mindex-recom {
	background-color: #fff;
	padding: 10px;
}
.mindex-recom .mrtit {
	line-height: 23px;
}
.mindex-recom ul {
	display: block;
}
.mindex-recom li {
	display: block;
	width: 25%;
	float: left;
	text-align: center;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	padding: 0 2px;
	margin-top: 10px;
	line-height: 1.4;
}
.mindex-recom li img {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	margin-bottom: 2px;
}
/*2.15专家列表*/
.cc-lef li.cur span {
	padding-left: 15px;
	background: url(../images/cs-jtright.png) no-repeat left center;
}
.spec-box-leftwrapper .c-100 {
	text-align: center;
	padding: 15px 15px;
	color: #5b5b5b;
	font-size: 14px;
	border-bottom: 1px solid #e1e1e1;
	box-sizing: border-box;
}
.spec-box-leftwrapper .c-100.cur {
	color: #37a6eb;
}
.scroll-itemchoscbox {
	width: 100%;
	height: 302px;
	overflow: hidden;
	background: #fff;
	font-size: 14px;
}
.itemchos-box-leftwrapper {
	position: relative;
	height: 302px;
	overflow: hidden;
	/* Prevent native touch events on Windows */
	-ms-touch-action: none;
	/* Prevent the callout on tap-hold and text selection */
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	/* Prevent text resize on orientation change, useful for web-apps */
	-webkit-text-size-adjust: none;
	-moz-text-size-adjust: none;
	-ms-text-size-adjust: none;
	-o-text-size-adjust: none;
	text-size-adjust: none;
}
.itemchos-leftscroller {
	position: absolute;
	width: 100%;
	/* Prevent elements to be highlighted on tap */
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	/* Put the scroller into the HW Compositing layer right from the start */
	-webkit-transform: translateZ(0);
	-moz-transform: translateZ(0);
	-ms-transform: translateZ(0);
	-o-transform: translateZ(0);
	transform: translateZ(0);
}
.itemch-tit h2 {
	line-height: 28px;
}
.itemchos-leftscroller .disp-tit-box {
	color: #5b5b5b;
}
.itemchos-leftscroller .disp-tit-box em {
	color: #37a6ec;
}
.itemchos-leftscroller .disp-mainbox {
	padding: 15px 0 10px;
}
.itemchos-leftscroller .disp-sloer .c-33 {
	border-radius: 3px;
	text-align: center;
	background: #f2f2f2;
	color: #333333;
	padding: 3px 0;
	margin-bottom: 15px;
}
.itemchos-leftscroller .disp-sloer .c-33.cur {
	background: #37a6ec;
	color: #fff;
}
.disp-sloer .c-row .c-33:last-child {
	margin-left: 0;
}
.disp-sloer .c-row .c-33.tipsl {
	margin-right: 3%;
}
.c-ffa800 {
	color: #ffa800;
}
.itemch-tit .c-btn-tiny {
	width: 65px;
}
.c-lab-mor li.doctor a {
	border-left: 1px solid #f2f2f2;
}
.test-boxer.second .c-avatar-m img {
	border-radius: 100%;
}
.second .cc-lef li.cur span {
	background: none;
}
/* 绿色风格皮肤样式  */
/*green*/
.wdz-green .c-btn-maincolor {
	background: #4dcd70;
}
/*微导诊按钮绿色*/
.wdz-green .c-btn-maincolor:hover {
	background-color: #4dc86f;
}
.wdz-green .c-btn-wordcolor {
	color: #4dcd70;
}
/*微导诊文字绿色*/
.wdz-green .professor-listhead li em.cur {
	color: #4dcd70;
}
.wdz-green .cc-rig li.cur {
	color: #4dcd70;
}
/*专家列表按城市文字绿色*/
.wdz-green .spec-leftscroller div.c-33.cur {
	color: #4dcd70;
}
/*专家列表按专科文字绿色*/
.wdz-green .c-37a6ed,
.wdz-green c-007cd9 {
	color: #4dcd70;
}
.wdz-green .c-lab-les {
	border: 1px solid #4dc86f;
}
.wdz-green .c-lab-les li {
	border-left: 1px solid #4dc86f;
}
.wdz-green .c-lab-les li a {
	color: #4dc86f;
}
.wdz-green .c-lab-les li.hit {
	background-color: #4dc86f;
}
.wdz-green .c-lab-les li.hit a {
	color: #fff;
}
.wdz-green .c-lab-mor li.hit {
	border-bottom: 3px solid #4dc86f;
}
.wdz-green .c-lab-mor li.hit a {
	color: #4dc86f;
}
.wdz-green .hz-header li.cur {
	border-bottom: 2px solid #4dc86f;
}
.wdz-green .hz-header li.cur span {
	color: #4dc86f;
}
.wdz-green .c-ser-btn a {
	background: #4dc86f;
}
.wdz-green .view-more a {
	color: #4dc86f;
}
.wdz-green .c-4dc86f {
	color: #4dc86f;
}
.wdz-green .spec-box-leftwrapper .c-100.cur {
	color: #4dc86f;
}
.wdz-green .scroll-itemchoscbox .c-btn-37a6ec {
	background: #4dcd70;
}
.wdz-green .itemchos-leftscroller .disp-sloer .c-33.cur {
	background: #4dcd70;
}
.wdz-green .itemchos-leftscroller .disp-tit-box em {
	color: #4dc86f;
}
.swiper-container {
	width: 100%;
	margin: 10px auto 0 auto !important;
}
.swiper-slide {
	text-align: center;
	font-size: 18px;
	background: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}
.swiper-slide div {
	text-align: center;
}
.swiper-container .swiper-slide div img {
	width: 40px;
	height: 40px;
	border-radius: 50%;
}
/* 医患沟通开始 */
.c-chat-box {
	border: none;
	padding-left: 15px;
	padding-right: 15px;
}
.time-tips {
	margin: 10px 0 0 0;
	text-align: center;
	clear: both;
}
.time-tips span {
	position: relative;
	display: inline-block;
	padding: 0 60px;
	color: #aeaeae;
	font-size: 13px;
}
.time-tips span:before,
.time-tips span:after {
	position: absolute;
	content: "";
	display: block;
	width: 50px;
	height: 1px;
	background: #e6e4e1;
	top: 50%;
}
.time-tips span:before {
	left: 0;
}
.time-tips span:after {
	right: 0;
}
.chat-left,
.chat-right {
	clear: both;
	overflow: hidden;
	padding: 10px 0;
}
.chat-left > dt,
.chat-right > dt {
	width: 40px;
	height: 40px;
}
.chat-left > dt {
	float: left;
	margin-right: 15px;
}
.chat-right > dt {
	float: right;
	margin-left: 15px;
}
.chat-left > dt img,
.chat-right > dt img {
	width: 40px;
	height: 40px;
	border-radius: 50%;
}
.chat-left > dd,
.chat-right > dd {
	position: relative;
	min-height: 18px;
	font-size: 14px;
	display: inline-block;
	max-width: 65%;
	background: #fff;
	border: 1px solid #e1e1e1;
	border-radius: 6px;
	padding: 8px 10px;
	box-shadow: 1px 1px 1px rgba(0, 0, 0, .1);
}
.chat-left > dd {
	float: left;
	white-space: pre-wrap;
	word-wrap: break-word;
}
.chat-right > dd {
	float: right;
	background: #bce0ff;
	border: 1px solid #81bdf7;
	white-space: pre-wrap;
	word-wrap: break-word;
}
.chat-left > dd:after {
	content: "";
	position: absolute;
	top: 14px;
	left: -6px;
	display: block;
	width: 8px;
	height: 8px;
	background: #fff;
	border-color: #e1e1e1;
	border-style: solid;
	border-width: 1px 0 0 1px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.chat-right > dd:after {
	content: "";
	position: absolute;
	top: 14px;
	right: -6px;
	display: block;
	width: 8px;
	height: 8px;
	background: #bce0ff;
	border-color: #81bdf7;
	border-style: solid;
	border-width: 1px 0 0 1px;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	transform: rotate(135deg);
}
.chat-left > dd p img,
.chat-right > dd p img {
	max-width: 150px;
	max-height: 150px;
	margin: 5px 0;
}
.pull-more {
	text-align: center;
	color: #5b5b5b;
	font-size: 14px;
	padding: 14px 0;
}
.chat-btm-box {
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 2100;
	width: 100%;
	background: #fafafa;
	border-top: 1px solid #e1e1e1;
}
.nopos {
	position: relative;
	bottom: auto;
	left: auto;
}
.chat-text {
	position: relative;
	padding: 10px 15px 10px 15px;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.insert-more {
	position: absolute;
	display: block;
	width: 30px;
	height: 30px;
	top: 6px;
	right: 25px;
}
.insert-more i {
	font-size: 30px;
	line-height: 30px;
	color: #a9a9a9;
}
.send-text {
	position: absolute;
	width: 50px;
	padding: 8px 0;
	display: block;
	bottom: 10px;
	right: 15px;
	background: #37a6ec;
	border-radius: 4px;
}
.word-count {
	font-size: 12px;
	text-align: right;
	padding: 0 5px;
	color: #bfbfbf;
}
.insert-img {
	position: absolute;
	display: block;
	width: 30px;
	height: 30px;
	top: 6px;
	right: 15px;
	border: 1px solid #737373;
	border-radius: 50%;
}
.insert-img:before {
	position: absolute;
	content: "";
	width: 16px;
	height: 2px;
	background: #737373;
	top: 14px;
	left: 7px;
}
.insert-img:after {
	position: absolute;
	content: "";
	width: 2px;
	height: 16px;
	background: #737373;
	top: 7px;
	left: 14px;
}
.insert-img span {
	display: none;
}
.chat-text-inp {
	padding: 0 65px 0 0;
}
.chat-text-box {
	border: 1px solid #e1e1e1;
	background: #fff;
	border-radius: 4px;
}
.chat-txt-con {
	width: 100%;
	height: 31px;
	outline: 0;
	font-size: 14px !important;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border: none;
	padding: 0 5px;
	white-space: pre-wrap;
	word-wrap: break-word;
	word-wrap: break-all;
}
.ins-img-btn {
	position: fixed;
	width: 100%;
	bottom: 0;
	left: 0;
	z-index: 3100;
}
.ins-img-btn .c-btn {
	border-radius: 4px;
	border: none;
	color: #157efb;
	font-size: 20px;
}
.ins-img-btn .c-btn:first-child {
	border-radius: 4px 4px 0 0;
}
.ins-img-btn .c-btn:nth-child(2) {
	border-top: 1px solid #e1e1e1;
	border-radius: 0 0 4px 4px;
}
.pull-more {
	text-align: center;
	color: #5b5b5b;
	font-size: 14px;
	padding: 14px 0;
}
.bgc-f7f5f2 {
	background: #f7f5f2;
}
.more-opt {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #fafafa;
	z-index: 2200;
}
.m-close {
	position: absolute;
	top: 8px;
	right: 8px;
	display: block;
	width: 20px;
	height: 20px;
}
.m-close i.ico-close {
	position: static;
	width: 20px;
	height: 20px;
	background-color: #afafaf;
}
i.ico-close:before {
	width: 12px;
	height: 2px;
	left: 4px;
	top: 9px;
}
i.ico-close:after {
	width: 2px;
	height: 12px;
	left: 9px;
	top: 4px;
}
.more-opt-list {
	clear: both;
	padding: 58px 30px 0 30px;
	text-align: center;
	overflow: hidden;
}
.more-opt-list.normal {
	clear: both;
	padding: 7px 30px 0 30px;
	text-align: center;
	overflow: hidden;
}
.dh-nav {
	width: 100%;
	height: 40px;
	line-height: 40px;
	border-bottom: 1px solid #e1e1e1;
	background: #fff;
	font-size: 14px;
}
.dh-nav li {
	display: block;
	float: left;
	padding: 0 20px;
}
.dh-nav li.curr {
	color: #25aadf;
	position: relative;
}
.dh-nav li.curr:before {
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 2px;
	background: #25aadf;
	left: 0;
	bottom: -1px;
}
.dh-list {
	width: 100%;
	background: #fff;
	z-index: 1;
}
.dh-list-box {
	width: 100%;
}
.dh-list li {
	overflow: hidden;
	padding: 15px 0 5px 0;
	font-size: 14px;
	color: #333;
	display: block;
}
.dh-list li label {
	display: block;
	width: 25%;
	float: left;
	text-align: center;
	margin-bottom: 10px;
}
.dh-list li label img {
	width: 40px;
	height: 40px;
	border-radius: 50%;
}
.prerecord {
	padding-left: 10px;
	border-top: 1px solid #f2f2f2;
	background: #fff;
}
.prerecord:first-child {
	border-top: 0;
	margin-top: 0;
}
.prerecord div {
	text-align: left !important;
}
.pd-top {
	line-height: 25px;
	padding: 5px 0;
	padding-right: 10px;
}
.pb-mid {
	display: box;
	display: -webkit-box;
	padding-right: 10px;
}
.pd-img {
	width: 40px;
	height: 40px;
	margin: 10px 10px 10px 0;
	box-flex: 0;
	-webkit-box-flex: 0;
}
.pd-mess {
	box-flex: 1;
	-webkit-box-flex: 1;
	display: box;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
}
.pd-btn {
	width: 60px;
	box-flex: 0;
	-webkit-box-flex: 0;
	display: box;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
}
.pd-btn a {
	display: block;
	width: 60px;
	height: 25px;
	line-height: 25px;
	text-align: center;
	color: #fff;
	background: #4cd079;
	font-size: 13px;
	border-radius: 4px;
}
.pd-bot {
	border-top: 1px solid #f2f2f2;
	line-height: 40px;
	padding-right: 10px;
}
.pd-bot a {
	display: inline-block;
	width: 60px;
	height: 30px;
	line-height: 30px;
	background: #4dcd70;
	border-radius: 4px;
	text-align: center;
	color: #fff;
	float: right;
	margin-top: 5px;
}
.pd-bot a.disab {
	background: #ccc;
}
.scoresr {
	line-height: 45px;
	border-top: 1px dashed #f2f2f2;
	border-bottom: 1px dashed #f2f2f2;
	padding: 0 15px 0 28px;
}
.ti-star {
	background: url(../images/tip-star.png) no-repeat;
	text-align: left;
	width: 157px;
	background-size: cover;
	overflow: hidden;
	background-position: 0 -22px;
	margin-top: 12px;
	margin-left: 15px;
}
.ti-star ul {
	background: url(../images/tip-star.png) no-repeat;
	width: 157px;
	height: 22px;
	background-size: cover;
	overflow: hidden;
	background-position: 0 -22px;
}
.ti-star ul.one {
	background-position: -134px 0;
}
.ti-star ul.two {
	background-position: -101px 0;
}
.ti-star ul.three {
	background-position: -67px 0;
}
.ti-star ul.four {
	background-position: -34px 0;
}
.ti-star ul.five {
	background-position: 0 0;
}
.scoresr li {
	float: left;
	width: 31.4px;
	height: 24px;
}

+ 131 - 0
html/grzx/html/add-equipment.html

@ -0,0 +1,131 @@
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>新增设备</title>
        <meta name="format-detection" content="telephone=no"/>
        <meta name="viewport"
              content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
        <meta name="apple-mobile-web-app-capable" content="yes"/>
        <meta name="apple-mobile-web-app-status-bar-style" content="black"/>
        <link rel="stylesheet" href="../../../css/cross.css" type="text/css"/>
        <link rel="stylesheet" href="../../../css/cross.ui.css" type="text/css"/>
        <link rel="stylesheet" type="text/css" href="../../../iconfont/iconfont.css" />
        <link rel="stylesheet" type="text/css" href="../../../css/ss-style.css">
        <script type="text/javascript" src="../../../js/mui.min.js" ></script>
    </head>
    <body>
        <!--<header class="h45">
            <div class="header-comtop">
                <a class="mui-action-back"></a>
                <h1>新增设备信息</h1>
            </div>
        </header>-->
        <div class="c-list c-border-tb mt10">
            <div class="c-list-div c-list-text">
                <div class="c-list-value mr80">
                    <span>选择设备</span>
                </div>
                <div class="c-list-info">
                    <input type="text" placeholder="请选择设备类别" data-val="type">
                </div>
                <span class="arrow-down"></span>
            </div>
        </div>
        <ul class="c-list c-border-tb mt10">
            <li class="c-list-text">
                <input type="text"  placeholder="请输入设备名称" id="d_name"/>
            </li>
            <li class="c-list-text">
                <input type="text"  placeholder="请输入设备SN码" id="d_sn"/>
            </li>
        </ul>
        <div class="mlr15 mt20">
            <a href="javascript:;" class="btn-green-l" id="btnSave">保存</a>
        </div>
        <script src="../../../js/jquery/2.1.3/jquery.js"></script>
        <script src="../../../widget/mobiscroll/2.15.1/js/mobiscroll.js"></script>
        <link rel="stylesheet" href="../../../widget/mobiscroll/2.15.1/css/mobiscroll.css" />
        <script type="text/javascript" src="../../../js/common_http.js" ></script>
        
        <script>  
        	var category="";
            $(function(){       
                //获取设备类型的标识和名称
                sendPost("patient/device/category"," ", "json", "post", queryListFailed,device_type_Successs1);
                document.getElementById("btnSave").addEventListener("tap",function () {
                    var params={};
//                  params.code=code;
                    params.category=category;
//                  params.type_name=type_name;
                    params.name=$("#d_name").val();
                    params.sn=$("#d_sn").val();
                    if(!params.category){
                        alert("请选择设备类别");
                        return ;
                    }
                    if(!params.name){
                        alert("请输入设备名称");
                        return ;
                    }
                    if(!params.sn){
                        alert("请输入设备SN码");
                        return ;
                    }                   
                    sendPost("patient/device/add",params, "json", "post", queryListFailed,queryListSuccesss);    
                });
        });
        
        function device_type_Successs1(res){
            var arr_key=[];
            var arr_value=[];
            var data=res.list;
            for(var i=0;i<data.length;i++){
                arr_key.push(data[i].code);
                arr_value.push(data[i].name);                        
                
            }                    
            var opt4 = {
                theme: 'ios',
                lang:'zh',
                formatValue: function (d) {
                    return d.join(',');
                },
                customWheels:true,
                wheels: [//如果值非常多请事先按需求生成好
                    [
                        {
                            keys:arr_key,//['1','2','3'],
                            values: arr_value,//['血糖仪', '血压计', '血压']
                        }
                    ]
                ],
                onSelect: function(valueText, inst){                          
                    console.log(valueText);
                    var dd=eval("["+valueText+"]");
                    category=dd[0].keys; 
                    $('input[data-val=type]').val(dd[0].values);
                },
            };                    
            var ss=$('input[data-val=type]').mobiscroll(opt4);
            
        }
        
        function queryListFailed(res) {
			if (res && res.msg) {
				alert(res.msg);
			} else {
				alert("数据加载失败");
			}
		}
        
        function queryListSuccesss(res) {
			if (res.status == 200) {
				window.location.href="my-equipments.html";				
			} else {
				alert("保存失败");
			}				
		}
        </script>
    </body>
</html>

+ 403 - 0
html/grzx/html/bangdingsj.html

@ -0,0 +1,403 @@
<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <title>绑定手机号</title>
    <meta name="format-detection" content="telephone=no"/>
    <meta name="viewport"
          content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
    <meta name="apple-mobile-web-app-capable" content="yes"/>
    <meta name="apple-mobile-web-app-status-bar-style" content="black"/>
    <link rel="stylesheet" href="../../../css/cross.css" type="text/css"/>
    <link rel="stylesheet" href="../../home/css/bind-phone.css" type="text/css"/>
    <link rel="stylesheet" href="../../../css/cross.ui.css" type="text/css"/>
    <link rel="stylesheet" type="text/css" href="../../../css/ss-style.css">
    <link rel="stylesheet" type="text/css" href="../../../iconfont/iconfont.css" />
    <style>
    	.n-list-info{position: relative;}
    	.searchbar-clear{position: absolute;width: 28px;height: 28px;right: 0;top:8px;opacity:0;pointer-events:none;background-position:center;background-repeat:no-repeat;background-image:url(../../../images/delete01_pre.png);-webkit-background-size:20px 20px;background-size:20px 20px;-webkit-transition-duration:300ms;transition-duration:300ms;cursor:pointer;}
    	#div-yzm{width:80px;height:29px;border:1px solid #4DCD70;color:#4DCD70;font-size:14px;line-height:29px;text-align:center;border-radius:10px;margin-top:7px;}
		.c-btn-dcdcdc{background: #DCDCDC;}
		.c-btn.active{background: #4DCD70;}
    </style>
</head>
<body style="overflow: hidden;">
    
    <div class="main">
        <ul class="n-list edit-info registered c-border-tb mt15 c-f15 form-register">
          <li>
            <div class="n-list-key" style="width: 2.3em;">
                <i class="iconfont icon-shouji1"></i>
            </div>
            <div class="n-list-info">
                <input id="txtMobile" type="tel" class="width-100 c-f16 c-5b5b5b" maxlength="11" placeholder="请输入新的手机号码" onkeyup="this.value=this.value.replace(/[^\d]/g,'')"/>
            	<a href="#" class="searchbar-clear"></a>
            </div>
          </li>
          <li>
            <div class="n-list-key" style="width: 2.3em;">
                <i class="iconfont icon-yanzhengma01"></i>
            </div>
            <div class="n-list-info">
            	<input id="txtCode" type="text" class="width-100 c-f16 c-5b5b5b" placeholder="请输入验证码"/>
            	<a href="#" class="searchbar-clear"></a>
            </div>
            <div id="messageCode1" class="n-list-key pl15 c-17b3ec" onclick="sendCode()">
                <span>获取短信验证码</span>
            </div>
            <div id="messageCode2" class="n-list-key pl15 c-999999" style="display: none;">
                <span id="message"></span>
            </div>
          </li>
        </ul>
        <div class="mb15 mlr15 mt20">
            <a href="javascript:;" style="font-size: 18px;" class="c-btn c-btn-dcdcdc c-btn-full c-btn-radius c-f16">完 成</a>
        </div>
    </div>
    <div id="phoneBindWrap">
        <div style="display: none;" id="phoneBindBox">
            <div class="common-mask bg-black js-closePhoneBox"></div>
            <div class="phone-bind-box mlr15 mtb10">
                <div class="bgc-fff border-radius-rounded">
                    <div class="phone-bind-msg ptb15 plr15">
                        该号码已与他人绑定,是否继续使用该号码注册?是否将已绑人员设定为家庭成员?(家庭成员间可互相切换账号并查看健康档案等隐私信息)
                    </div>
                    <div class="phone-bind-member c-border-t c-border-b js-LookBindPeople">查看绑定人员</div>
                    <div class="phone-bind-member c-border-b js-beFamily">继续绑定,且成为家人</div>
                    <div class="phone-bind-member js-notBeFamily">继续绑定,但不成为家人</div>
                </div>
                <div class="phone-bind-member border-radius-rounded bgc-fff mt10 js-closePhoneBox">取消</div>
            </div>
        </div>
    
    
        <div class="common-mask bgc-f9f9f9" style="display: none;" id="phoneMemberList">
            <div class="phone-member-box">
                <ul class="phone-member-list plr10 ptb10 mt10 c-border-b c-border-t" id="phoneMemberItem">
                    <script id="memberList" type="text/html">
                        {{each dataList as value i}}
                        <li class="phone-member-item">
                            <div><img src="{{value.photo | setPhoto}}" class="phone-member-img"></div>
                            <span class="phone-member-name">{{value.name}}</span>
                        </li>
                        {{/each}}
                    </script>
                </ul>
                <div class="plr10">
                    <div class="phone-member-btn js-beFamily">继续绑定,且成为家人</div>
                    <div class="phone-member-btn mt10 js-notBeFamily">继续绑定,但不成为家人</div>
                    <div class="phone-member-btn phone-member-back mt10 js-closePhoneBox">返回修改手机号码</div>
                </div>
            </div>
        </div>
    </div>
</body>
<script type="text/javascript" src="../../../js/jquery/2.1.3/jquery.js" ></script>
<script type="text/javascript" src="../../../js/common_http.js" ></script>
<script type="text/javascript" src="../../../js/weixin_common.js" ></script>
<script type="text/javascript" src="../../../js/template.js" ></script>
<link rel="stylesheet" type="text/css" href="../../../widget/artDialog/6.0.5/css/ui-dialog.min.css">
<script src="../../../widget/artDialog/6.0.5/js/dialog-plus.js"></script>
<script type="text/javascript" src="../../../js/commit_validate.js" ></script>
<script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
<script type="text/javascript">
	var dd = dialog({contentType:'load', skin:'bk-popup', content:'绑定中...'});
	var Request = new Object();
	Request = GetRequest();
	var openid = Request["openid"];
	var type = Number(Request["type"]);
	var mobile1 = Request["mobile"];
	var clock = "";
	var nums = 60;
	var loginParams = Request["loginParams"];
	var relation = 0;
	
	
	isValueChange();//判断当前是否有输入值,有输入则登录按钮变亮
	bindEvents();
	
	if(loginParams) {
		loginParams = JSON.parse(decodeURIComponent( Request["loginParams"]));
	}
	$(function (){
		var userAgent = window.localStorage.getItem(agentName);
        if(userAgent){
        	var paurl = "";
        	if(type == 0){
        		paurl = "wx/html/home/html/login.html?type=0&openid=" + openid;
        	}
        	else{
        		if(mobile1){
        			paurl = "wx/html/home/html/login.html?type=" + type + "&openid=" + openid + "&mobile=" + mobile1;
        		}
        		else{
        			paurl = "wx/html/home/html/login.html?type=" + type + "&openid=" + openid;
        		}
        	}
        	//从后台那边获取签名等信息
			var params = {};
			params.pageUrl = window.location.href;
			$.ajax(server + "weixin/getSign", {
				data: params,
				dataType: "json",
				type: "post",
				success: function(res){
					if (res.status == 200) {
						var t = res.data.timestamp;
						var noncestr = res.data.noncestr;
						var signature = res.data.signature;
						wx.config({
							//debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
						    appId: appId, // 必填,公众号的唯一标识
						    timestamp: t, // 必填,生成签名的时间戳
						    nonceStr: noncestr, // 必填,生成签名的随机串
						    signature: signature,// 必填,签名,见附录1
						    jsApiList: [
						    	'closeWindow'
						    ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
						});
					}
				}
			});
			/*wx.ready(function(){
				wx.closeWindow();
			});*/
        }
        else{
			if(!openid){
				dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'openid获取失败'}).show();
			}
		}
	})
	
	function bindEvents(){
		$(".c-btn").on("click",function(){
			if($(this).hasClass("active")){
				commit();
			}
		})
		
		$("input").on("focus",function(){
			$(".searchbar-clear").css("pointer-events","none").css("opacity",0);
			if($(this).val()){
				$(this).next().css("pointer-events","auto").css("opacity",1);
			}
		}).on("input",function(){
			$(this).next().css("pointer-events","auto").css("opacity",1);
		});
		
		$(".n-list-info").on("click",".searchbar-clear",function(){
			$(this).prev().val("");
			$(this).css("pointer-events","none").css("opacity",0);
			$(this).prev().focus();
			return false;
		});
	}
	function isValueChange(){
		var self = this;
		var int= setInterval(function() {
			if($("#txtMobile").val()&&$("#txtCode").val()){
				clearInterval(int);
				int = null;
				$(".c-btn").addClass("active");
			}
	
		},300);
	}
	
	function sendCode(){
		var mobile = document.getElementById("txtMobile").value;
		if(!mobile){
			dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'请输入手机号'}).show();
			return;
		}
		if(!isphone(mobile)){
			dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'手机号格式不正确'}).show();
			return;
		}
		
		var dd1 = dialog({contentType:'load', skin:'bk-popup', content:'请求中...'});
		dd1.showModal();
		sendPost("patient/is_mobile_register", {mobile: mobile}, "json", "post", function(res){
			dd1.close();
			dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'验证手机是否注册失败'}).show();
		}, function(res){
			dd1.close();
			if(res.status==200){
				if(res.data == 0){
					$("#messageCode1").hide();
					document.getElementById("message").innerHTML = nums+'秒后可重新获取';
					$("#messageCode2").show();
					clock = setInterval(doLoop, 1000); //一秒执行一次
					var data = {};
					data.mobile = mobile;
					data.type = 8;
					sendPost("common/captcha", data, "json", "post", sendFailed, sendSuccesss);
				} else {
					dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'该手机已注册!'}).show();
				}
			} else{
				dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'验证手机是否注册失败'}).show();
			}
		})
	}
	//失败
	function sendFailed(res) {
		clearInterval(clock); //清除js定时器
	    $("#messageCode1").show();
	    $("#messageCode2").hide();
	    nums = 60; //重置时间
		if (res && res.msg) {
			dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();
		} else {
			dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'获取失败'}).show();
		}
	}
	
	function sendSuccesss(res){
		if (res.status == 200) {
			
		}
		else{
			sendFailed(res);
		}
	}
	
	function doLoop(){
		nums--;
		if(nums > 0){
			document.getElementById("message").innerHTML = nums+'秒后可重新获取';
		}else{
		    clearInterval(clock); //清除js定时器
		    $("#messageCode1").show();
		    $("#messageCode2").hide();
		    nums = 60; //重置时间
		}
	}
	
	function commit(){
		var
            mobile = document.getElementById("txtMobile").value,
		    captcha = document.getElementById("txtCode").value,
            data = {};
        
		//拼请求内容
		data.mobile = mobile;
		data.captcha = captcha;
		data.type = 1;
		data.relation = 0;
		
		if (!mobile || !captcha) {
			dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'手机号和验证码不能为空'}).show();
			return;
		}
		
		if(!isphone(mobile)){
			dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'手机号格式不正确'}).show();
			return;
		}
		
		dd.showModal();
		
		sendPost("patient/mobile_update", data, "json", "post", operateFailed, operateSuccesss)
		//成功调用登录接口
		function operateSuccesss(res) {
			function showBindPhone () {
				var
					resData = res.data,
					$phoneBindBox = $('#phoneBindBox'),
					$closePhoneBox = $('.js-closePhoneBox'),
					$beFamily = $('.js-beFamily'),
					$notBeFamily = $('.js-notBeFamily'),
					$LookBindPeople = $('.js-LookBindPeople'),
					$phoneMemberList = $('#phoneMemberList'),
					$phoneMemberItem = $('#phoneMemberItem');
//				name = $("#txtName").val(),
//				idcard = $("#txtIdcard").val(),
//				ssc = $("#txtSsc").val(),
//				mobile = $("#txtMobile").val(),
//				paramAgent = "",
				if (resData) {
					memberLength = resData.length; //成员数量
					if (memberLength > 0){
						showPhoneBoxFn();
					}
				}
				// 手机有绑定成员时显示弹框
				function showPhoneBoxFn() {
					$phoneBindBox.show();
					dd.close();
					$closePhoneBox.click(function () {
						$phoneBindBox.hide();
						$phoneMemberList.hide();
					});
					$beFamily.click(function () {
						relation = 2;
						agreementPageFn();
					});
					$notBeFamily.click(function () {
						relation = 1;
						agreementPageFn();
					});
					$LookBindPeople.click(function () {
						$phoneBindBox.hide();
						$phoneMemberList.show();
						var data = {
							dataList: resData,
						};
						var html = template('memberList', data);
						$phoneMemberItem.html(html);
					});
				}
			};
			function agreementPageFn() {
				data.relation = relation;
				sendPost("patient/mobile_update", data, "json", "post", failed, success);
				function failed() {
					//非200则为失败
					operateFailed(res);
				};
				function success() {
//					window.location.href = "my-detail.html?type=" + type + "&openid=" + openid;
					console.log(relation);
				};
			}
			if (res.status == 200) {
				window.location.href = "my-detail.html?type=" + type + "&openid=" + openid;
				dd.close();
			} else if (res.status == 1) {
				showBindPhone();
			} else {
				//非200则为失败
				operateFailed(res);
			}
		}
		//失败
		function operateFailed(res) {
			dd.close();
			if (res && res.msg) {
				dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();
			} else {
				dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'验证码验证失败'}).show();
			}
		}
	}
	
	template.helper("setPhoto", function(p) {		
			return getImgUrl(p);
	});
	
</script>
</html>

+ 82 - 0
html/grzx/html/change-login.html

@ -0,0 +1,82 @@
<!doctype html>
<html>
	<head>
		<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
		<meta charset="utf-8">
		<title>切换账号</title>
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
		<link rel="stylesheet" type="text/css" href="../../../iconfont/iconfont.css" />
		<link rel="stylesheet" type="text/css" href="../css/sq-style.css" />	
		<link rel="stylesheet" type="text/css" href="../../../css/iscroll.css" />
		<link rel="stylesheet" type="text/css" href="../css/change-login.css" />
		<link rel="stylesheet" type="text/css" href="../../../widget/artDialog/6.0.5/css/ui-dialog.min.css">
		<link rel="stylesheet" type="text/css" href="../../../widget/mobiscroll/2.15.1/css/mobiscroll.css">
	</head>
	<body>
		<div class="main">
            <div class="tips ptb10 plr10" style="z-index:4;position: absolute;" id="tip">
				您可在已授权的家人中自由切换,若需切换到其它账号,请直接登录其账号。<a id="login" href="#">登录其他账号</a>
			</div>
            <div id="wrapper" style="top:63px;">
				<div class="iScroller">
					
		            <ul class="family-list" id="ul_family">
		            	<!--<li>
		            		<div class="n-list dr-item c-border on">
								<div class="n-list-li">
									<div class="n-list-key">
										<div class="n-avatar-l">
											<img class="c-images-cycle" src="../../../images/p-default.png">
										</div>
									</div>
									<div class="n-list-info pl15">
										<h2>张大山</h2>
										<p>父亲</p>
									</div>
									<div class="n-list-key checked">
										<i class="icon-checked"></i>
									</div>
								</div>
							</div>
		            	</li>
		            	<li>
		            		<div class="n-list dr-item c-border">
								<div class="n-list-li">
									<div class="n-list-key">
										<div class="n-avatar-l">
											<img class="c-images-cycle" src="../../../images/p-default.png">
										</div>
									</div>
									<div class="n-list-info pl15">
										<h2>张大山</h2>
										<p>女儿</p>
									</div>
									<div class="n-list-key checked">
										<i class="icon-checked"></i>
									</div>
								</div>
							</div>
		            	</li>
		            	<li>
		            		<div class="n-list list-last dr-item c-t-center">
		            			<i class="icon-add"></i>
		            			<p>添加家人</p>
		            		</div>
		            	</li>-->
		            </ul>
				</div>
			</div>
		</div>
		<script src="../../../js/jquery/2.1.3/jquery.js"></script>
		<script src="../../../js/app.js" type="text/javascript" charset="utf-8"></script>
		<script type="text/javascript" src="../../../js/mui.min.js"></script>
		<script src="../../../widget/artDialog/6.0.5/js/dialog-plus.min.js"></script>
		<script src="../../../widget/marques/marquee.js"></script> 
		<script type="text/javascript" src="../../../js/common_http.js" ></script>
		<script type="text/javascript" src="../../../js/weixin_common.js" ></script>
		<script src="../../../widget/mobiscroll/2.15.1/js/mobiscroll.js"></script>
		<script src="../js/iscroll-probe.js"></script>
		<script src="../js/iscroll-pull-up-down.js"></script>
		<script type="text/javascript" src="../js/change-login.js" ></script>
	</body>
</html>

+ 45 - 0
html/grzx/html/delete-equipment.html

@ -0,0 +1,45 @@
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>删除设备</title>
        <meta name="format-detection" content="telephone=no"/>
        <meta name="viewport"
              content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
        <meta name="apple-mobile-web-app-capable" content="yes"/>
        <meta name="apple-mobile-web-app-status-bar-style" content="black"/>
        <link rel="stylesheet" href="../../../css/cross.css" type="text/css"/>
        <link rel="stylesheet" href="../../../css/cross.ui.css" type="text/css"/>
        <link rel="stylesheet" type="text/css" href="../../../iconfont/iconfont.css" />
        <link rel="stylesheet" type="text/css" href="../../../css/ss-style.css">
        <script type="text/javascript" src="../../../js/mui.min.js" ></script>
        <script type="text/javascript" src="../../../js/app.js" ></script>
    </head>
    <body>
        <!--<header class="h45">
            <div class="header-comtop">
                <a class="mui-action-back"></a>
                <h1>我的设备信息</h1>
            </div>
        </header>-->
        <ul id="equ_list" class="c-list c-border-tb mt10">            
            <!--<li class="c-list-text c-list-link">
               <div class="c-list-key">
                    <i class="icon-del mr5"></i>
                    <span>血糖仪</span>
                </div>
               <div class="c-list-info c-t-right">42159451118</div>
               <span class="list-icon arrow-right"></span>
            </li>-->
        </ul>
        <div class="mlr15 mt20">
            <a href="javascript:;" class="btn-green-l" onclick="window.open('add-equipment.html')">添加设备</a>
        </div>
        <script src="../../../js/jquery/2.1.3/jquery.js"></script>
        <script src="../../../widget/artDialog/6.0.5/js/dialog-plus.min.js"></script>
        <link rel="stylesheet" href="../../../widget/artDialog/6.0.5/css/ui-dialog.min.css"/>
        <script type="text/javascript" src="../../../js/common_http.js" ></script>
		<script src="../js/del-my-equipments.js"></script>        
       
    </body>
</html>

+ 180 - 0
html/grzx/html/edit-equipment.html

@ -0,0 +1,180 @@
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>编辑设备信息</title>
        <meta name="format-detection" content="telephone=no"/>
        <meta name="viewport"
              content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
        <meta name="apple-mobile-web-app-capable" content="yes"/>
        <meta name="apple-mobile-web-app-status-bar-style" content="black"/>
        <link rel="stylesheet" href="../../../css/cross.css" type="text/css"/>
        <link rel="stylesheet" href="../../../css/cross.ui.css" type="text/css"/>
        <link rel="stylesheet" type="text/css" href="../../../iconfont/iconfont.css" />
        <link rel="stylesheet" type="text/css" href="../../../css/ss-style.css">
        <script type="text/javascript" src="../../../js/mui.min.js" ></script>
    </head>
    <body>
        <!--<header class="h45">
            <div class="header-comtop">
                <a class="mui-action-back"></a>
                <h1>编辑设备信息</h1>
            </div>
        </header>-->
        <div class="c-list c-border-tb mt10">
            <div class="c-list-div c-list-text">
                <div class="c-list-value mr80">
                    <span>选择设备</span>
                </div>
                <div class="c-list-info">
                    <input type="text" placeholder="请选择设备类别" data-val="type" id="d_type">
                </div>
                <span class="arrow-down"></span>
            </div>
        </div>
        <ul class="c-list c-border-tb mt10">
            <li class="c-list-text">
                <input type="text"  placeholder="请输入设备名称" id="d_name"/>
            </li>
            <li class="c-list-text">
                <input type="text"  placeholder="请输入设备SN码" id="d_sn"/>
            </li>
        </ul>
        <div class="mlr15 mt20">
            <a href="javascript:;" class="btn-green-l" id="btnSave">保存</a>
        </div>
        <script src="../../../js/jquery/2.1.3/jquery.js"></script>
        <script src="../../../widget/mobiscroll/2.15.1/js/mobiscroll.js"></script>
        <link rel="stylesheet" href="../../../widget/mobiscroll/2.15.1/css/mobiscroll.css" />
        <script type="text/javascript" src="../../../js/common_http.js" ></script>
        <script src="../js/my-equipments.js"></script>
        <script src="../../../js/weixin_common.js"></script>
        <script>        	
            $(function(){
//          	mui.plusReady(function(){
	
	        	var Request = new Object();
				Request = GetRequest(); 
        		var code=decodeURI(decodeURI(Request.code));
        		var type_name='';
				
				//获取现在有的设备类别以及名称
		        var params = {}
		        params.code = code;		        
				//发送ajax请求, 查询设备列表信息
				sendPost("patient/device/info", params, "json", "post", queryListFailed,device_info_Successs);				
				function device_info_Successs(res){		
					category=res.data.category;
					name=res.data.device_name;
					var sn=res.data.sn;
					
					//发送ajax请求, 查询设备类型
					sendPost("patient/device/category"," ", "json", "post", queryListFailed,device_type_Successs);
					function device_type_Successs(reso){
						dev_list=reso.list;	
						for(var i=0;i<reso.list.length;i++){
							if(reso.list[i].code==category){
								type_name=reso.list[i].name;
								$("#d_type").val(type_name);
								$("#d_name").val(name);
								$("#d_sn").val(sn);
							
							}
						
						}
						
					}
				
				}
            	//获取设备类型的标识和名称
            	sendPost("patient/device/category"," ", "json", "post", queryListFailed,device_type_Successs1);
            	function device_type_Successs1(res){
            		var arr_key=[];
            		var arr_value=[];
            		var data=res.list;
            		for(var i=0;i<data.length;i++){
            			arr_key.push(data[i].code);
            			arr_value.push(data[i].name);            			
            			
            		}
//          		console.log(arr_key);
//          		console.log(arr_value);
            		
            		var opt4 = {
                        theme: 'ios',
                        lang:'zh',
                        formatValue: function (d) {
                            return d.join(',');
                        },
                        customWheels:true,
                        wheels: [//如果值非常多请事先按需求生成好
                            [
                                {
                                    keys:arr_key,//['1','2','3'],
                                    values: arr_value,//['血糖仪', '血压计', '血压']
                                }
                            ]
                        ],
                        onSelect: function(valueText, inst){                      	
                        	console.log(valueText);
                            var dd=eval("["+valueText+"]");
                            category=dd[0].keys;                            
//                      	console.log(category);
                            $('input[data-val=type]').val(dd[0].values);
                        },
                    };            		
            		var ss=$('input[data-val=type]').mobiscroll(opt4);
            		
            	}
            	
            	
            	//
		        document.getElementById("btnSave").addEventListener("tap",function () {
	//				mui.back();
					var params={};
					params.code=code;
					params.category=category;
					params.type_name=type_name;
					params.name=$("#d_name").val();
					params.sn=$("#d_sn").val();
					if(!params.name){
						alert("请输入设备名称");
						return ;
					}
					if(!params.sn){
						alert("请输入设备SN码");
						return ;
					}					
//							 
					sendPost("patient/device/modify",params, "json", "post", queryListFailed,function(res){
						if (res.status == 200) {
//							window.history.back(-1); 
//							window.location.href="my-equipments.html";
							window.history.go(-2);
//							var befor_url="my-equipments.html";
//							var befor_url="equipment-detail.html";
							//拼接url参数
//							var _url=""+befor_url+"?code="+code+"&category="+category+"&type_name="+type_name+"&name="+name+"&sn="+sn+"";
							//字符串转码(中文)
//							var e_url = encodeURI(encodeURI(_url));
//							window.location.href=e_url;
							
							
//							setTimeout(function() {
//								mui.back();
//							}, 1000)
						}
						
					});										
					
				});
//	       });
	    });    
        </script>
    </body>
</html>

+ 157 - 0
html/grzx/html/equipment-detail.html

@ -0,0 +1,157 @@
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>设备详情</title>
        <meta name="format-detection" content="telephone=no"/>
        <meta name="viewport"
              content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
        <meta name="apple-mobile-web-app-capable" content="yes"/>
        <meta name="apple-mobile-web-app-status-bar-style" content="black"/>
        <link rel="stylesheet" href="../../../css/cross.css" type="text/css"/>
        <link rel="stylesheet" href="../../../css/cross.ui.css" type="text/css"/>
        <link rel="stylesheet" type="text/css" href="../../../iconfont/iconfont.css" />
        <link rel="stylesheet" type="text/css" href="../../../css/ss-style.css">
    	<script type="text/javascript" src="../../../js/app.js" ></script>
    	<script type="text/javascript" src="../../../js/jquery/2.1.3/jquery.js" ></script>
    	<script type="text/javascript" src="../../../js/mui.min.js" ></script>
    </head>
    <body>
        <!--<header class="h45">
            <div class="header-comtop">
                <a class="mui-action-back"></a>
                <h1>设备详情</h1>
                <a class="operate" id="edit_equip">编辑</a>
            </div>
        </header>-->
        <div class="c-list c-border-tb mt10">
            <div class="c-list-div c-list-text">
                <div class="c-list-value">
                    <span >设备类别:</span>
                </div>
                <div id="device_type" class="c-list-info">
                     
                </div>
            </div>
        </div>
        <ul class="c-list c-border-tb mt10">
            <li class="c-list-text">
                <div class="c-list-value">
                    <span >设备名称:</span>
                </div>
                <div  id="device_name" class="c-list-info">
                    
                </div>
            </li>
            <li class="c-list-text">
                <div class="c-list-value">
                    <span >设备SN码:</span>
                </div>
                <div id="device_sn" class="c-list-info">
                     
                </div>
            </li>
        </ul>
        <div class="mlr15 mt20" >
            <a id="edit_equip" class="btn-green-l operate" >编辑设备</a>           
        </div>
        <script src="../../../widget/mobiscroll/2.15.1/js/mobiscroll.js"></script>
        <link rel="stylesheet" href="../../../widget/mobiscroll/2.15.1/css/mobiscroll.css" />
        <script type="text/javascript" src="../../../js/common_http.js" ></script>
        <script type="text/javascript" src="../../../js/weixin_common.js" ></script>
        <script>
//			mui.init({
//			  preloadPages:[{
//			    id:'my-equipments.html',
//				url:'my-equipments.html'           
//			  }
//			  ]
//			});	
        	$(function(){     
        		var Request = new Object();
				Request = GetRequest(); 
        		var code=decodeURI(decodeURI(Request.code));
	            var type_name=decodeURI(decodeURI(Request.type_name));
	            var category=decodeURI(decodeURI(Request.category));
	            var name=decodeURI(decodeURI(Request.name));
				var sn=decodeURI(decodeURI(Request.sn));
        		
        		//获取现在有的设备类别以及名称
		        var params = {}
		        params.code = code;		        
				//发送ajax请求, 查询设备列表信息
				sendPost("patient/device/info", params, "json", "post", queryListFailed,device_info_Successs);				
				function device_info_Successs(res){		
					category=res.data.category;
					name=res.data.device_name;
					var sn=res.data.sn;
//					var type_name='';
					//发送ajax请求, 查询设备类型
					sendPost("patient/device/category"," ", "json", "post", queryListFailed,device_type_Successs);
					function device_type_Successs(reso){
						dev_list=reso.list;	
						for(var i=0;i<reso.list.length;i++){
							if(reso.list[i].code==category){
								type_name=reso.list[i].name;
								$("#device_type").html(type_name);
								$("#device_name").html(name);
								$("#device_sn").html(sn);
							
							}
						
						}
						
					}
				
				}
        		
        		
        		function queryListFailed(res) {
					console.log(res.status); 
					if (res && res.msg) {
				//		plus.nativeUI.toast(res.msg);
					} else {
				//		plus.nativeUI.toast("数据加载失败");
					}
				//	plus.nativeUI.closeWaiting();
				}
        		
				
				document.getElementById("edit_equip").addEventListener('tap',function(){
					var befor_url="edit-equipment.html";					
					//拼接url参数
					var _url=""+befor_url+"?code="+code+"&category="+category+"&type_name="+type_name+"&name="+name+"&sn="+sn+"";
					//字符串转码(中文)
					var e_url = encodeURI(encodeURI(_url));
					window.location.href=e_url;
					
				});
				
//				window.addEventListener('update_info',function(event){
//				  //获得事件参数
//				  type_name = event.detail.type_name;
//				  name = event.detail.name;
//				  sn = event.detail.sn;
//				 
//					$("#device_type").html(type_name);
//					$("#device_name").html(name);
//					$("#device_sn").html(sn);
//				});
//				var detailPage =null;
//				if(!detailPage){
//				    detailPage = plus.webview.getWebviewById('my-equipments.html');
//				  }
//				mui.fire(detailPage, "update_info_detail", {
//					type_name:params.type_name,
//					name:params.name,
//					sn:params.sn,
//				});			
				
	        });	
	        
        </script>
    </body>
</html>

+ 238 - 0
html/grzx/html/my-appointment.html

@ -0,0 +1,238 @@
<!doctype html>
<html>
	<head>
		<meta charset="utf-8">
		<meta http-equiv="X-UA-Compatible" content="IE=edge">
		<title>我的预约</title>
		<meta name="author" content="yihu.com">
		<meta name="format-detection" content="telephone=no">
		<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
		<meta name="apple-mobile-web-app-capable" content="yes">
		<meta name="apple-mobile-web-app-status-bar-style" content="black">
		<link rel="stylesheet" href="../../../css/cross.css" type="text/css"/>
	    <link rel="stylesheet" href="../../../css/cross.ui.css" type="text/css"/>
	    <link rel="stylesheet" type="text/css" href="../../../iconfont/iconfont.css" />
	    <link rel="stylesheet" type="text/css" href="../../../css/ss-style.css">
	    <link rel="stylesheet" type="text/css" href="../css/zx-style.css">
		<script type="text/javascript" src="../../../js/jquery/2.1.3/jquery.js"></script>
		<script type="text/javascript" src="../cross/js/cross.ui.js"></script>
	    <script type="text/javascript" src="../../../js/app.js" ></script>
	    <script type="text/javascript" src="../../../js/common_http.js" ></script>
	    <script type="text/javascript" src="../../../js/mui.min.js" ></script>
	    <script type="text/javascript" src="../../../js/weixin_common.js" ></script>
	    <link rel="stylesheet" type="text/css" href="../../../widget/artDialog/6.0.5/css/ui-dialog.min.css">
	    <script src="../../../widget/artDialog/6.0.5/js/dialog-plus.min.js"></script>
	    <link rel="stylesheet" type="text/css" href="../../../widget/mobiscroll/2.15.1/css/mobiscroll.css">
		<script src="../../../widget/mobiscroll/2.15.1/js/mobiscroll.js"></script>
		<script type="text/javascript" src="../../../js/date_common.js" ></script>
	</head>
	<body class="bgc-f3f3f3">
		<!--<div class="h45">
			<div class="demo-comtop">
				<a class="mui-action-back"></a>
				<h1>我的预约</h1>
			</div>
		</div>-->
		<div class="wis-fix c-border-b">
			<ul class="c-list patient-list c-border-t mt fosx-li" data-list="patientInfo">
				<li>
					<div class="c-list-value pr30">
						<h4>开始时间</h4>
					</div>
					<div class="c-list-info">
						<div class="input-group width-100">
							<input type="text" class="form-control width-100 no-border" placeholder="请选择开始时间" data-time="date1" id="date_begin">
							<span class="form-select-arrow"></span>
						</div>
					</div>
				</li>
				<li>
					<div class="c-list-value pr30">
						<h4>结束时间</h4>
					</div>
					<div class="c-list-info">
						<div class="input-group width-100">
							<input type="text" class="form-control width-100 no-border" placeholder="请选择结束时间" data-time="date2" id="date_end">
							<span class="form-select-arrow"></span>
						</div>
					</div>
				</li>
			</ul>
		</div>
		<div class="" id="apmt_list">
		</div>
		<!--<a href="javascript:;" class="view-more c-37a6ed" id="view_more">点击查看更多</a>-->
	</body>
	<script type="text/javascript">
		var d = dialog({contentType:'load', skin:'bk-popup'});
		var dd = dialog({contentType:'load', skin:'bk-popup', content:'取消预约中...'});
		var pagetype = 12;
		var uid = "";
	    $(function(){
	    	var opt1 = {
				preset: 'date',
				theme: 'ios',
				lang: 'zh',
				minDate: new Date(1900, 01, 01)
			};
			var opt2 = {
				preset: 'date',
				theme: 'ios',
				lang: 'zh',
				minDate: new Date(1900, 01, 01),
				onSelect: function(valueText, inst) {
					var date_begin = $("#date_begin").val();
					var date_end = $("#date_end").val();
					if (date_begin == null || date_begin.length == 0) {
						return;
					}
					if (date_end == null || date_end.length == 0) {
						return;
					}
					if(parseFloat(date_begin.replace(/-/g, "")) > parseFloat(date_end.replace(/-/g, ""))){
						dialog({
						  	title:'提示',
						  	skin:"ui-dialog ax-popup pror", 
						  	content:"开始时间不能大于结束时间", 
						  	ok: function (){}
						}).showModal(); 
						return;
					}
					queryList(date_begin, date_end);
				}
			};
			$('input[data-time=date1]').mobiscroll(opt1);
			$('input[data-time=date2]').mobiscroll(opt2);
	    	checkUserAgent();  	   	
	    })
	    
	    function queryInit(){  
			$('input[data-time=date1]').val(getDateBefore(24));
	        $('input[data-time=date2]').val(getDateBefore(-6));
	        queryList(getDateBefore(24), getDateBefore(-6));
	    }
	    
	    //查询患者的预约列表
	    function queryList(startDate,endDate){
	    	d.show();	    	
			var userAgent = window.localStorage.getItem(agentName);
			if(userAgent){
				var jsonstr = $.parseJSON(userAgent);
				uid = jsonstr.uid;
			}
	    	var params = {};
	    	params.patient = uid;
	    	params.strStart = startDate;
	    	params.strEnd = endDate;
		    sendPost('user/guaihao/GetRegList', params, 'json', 'post', queryFailed, querySuccess);
	    }
	    
	    function queryFailed(res) {
			d.close();
			if (res && res.msg) {
				dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();      
			} else {
				dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'加载失败'}).show(); 
			}
		}
		
		function querySuccess(res) {
			if (res.status == 200) {
				if (res.data.length > 0) {					
					var list = res.data;
					var $list = document.querySelector("#apmt_list");
					for (var i = 0; i < list.length; i++) {
						var k = list[i];
						var $ul = document.createElement("ul");
						$ul.className = "c-list c-border-tb list-item-2 mt10";
						var content = '<li class="c-list-text c-list-link">';
						content += '<div class="c-list-info">';
						content += '<h4 class="c-nowrap">' + k.org + '</h4>';
						content += '</div>';
				        content += '</li>';				        
						content += '<li class="c-list-function">';
					    content += '<div class="c-avatar-m">';
						content += '<img src="../../../images/d-male.png" class="border-radius-circle"></div>';
					    content += '<div class="c-list-info">';
						content += '<h4 class="c-nowrap">' + k.doctor;
						content += '<span class="ml5 c-909090 c-f15">' + k.dept + '</span>';
						content += '<span class="ml5 c-909090 c-f15"></span>';
					    content += '</h4>';
						content += '<p class="c-nowrap c-f15">就诊时间:' + k.start_time + '</p>';
						content += '</div>';
						content += '</li>';						
						var dateNow = new Date();
						var jiushen = new Date(k.start_time);
						var diff = dateNow - jiushen;
						if(diff < 0){	
							content += '<li class="c-list-text c-list-link">';
							content += '<div class="c-list-info">';
							content += '</div>';
							content += '<div class="c-list-value">';
							content += '<a href="javascript:;" class="c-btn-tiny c-btn-4dcd70 c-btn-radius ml10" onclick="cancel(\'' + uid + '\',\'' + k.reser_number + '\')">取 消</a>';
							content += '</div>';
						}
				        content += '</li>';
						$ul.innerHTML = content;
						$list.appendChild($ul);							
					}	
				} else {
					dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'无相关数据'}).show(); 
				}
				d.close();
			} 
			else{
				queryFailed(res);
			}
		}
		
		//取消预约
		function cancel(strSSID,strRegID){
			dialog({
	            title:'提示',
	            content:'您确定继续取消您的预约吗?',
	            ok: function (){
	            	dd.showModal();
	            	var params = {};
			    	params.patient = strSSID;
			    	params.strRegID = strRegID;
				    sendPost('user/guaihao/Unregister', params, 'json', 'post', cancelFailed, cancelSuccess);				
	            },
	            cancel: function () {
					return;
	            }
	    	}).showModal();
		}
		
		function cancelFailed(res) {
			dd.close();
			if (res && res.msg) {
				dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();      
			} else {
				dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'取消失败'}).show(); 
			}
		}
		
		function cancelSuccess(res) {
			if (res.status == 200) {
				dd.close();
				dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'取消成功'}).show();
				window.location.reload();			
			} 
			else{
				cancelFailed(res);
			}
		}
		
		//设置提醒
		function setRemind(code){
			openWebview('set-remind-2.html?code=' + code);
		}
		
		//就诊指南
		function guide(x,y){
			openWebview('../../home/html/guide.html?x=' + x + "&y=" + y);
		}		
	</script>
</html>

+ 182 - 0
html/grzx/html/my-detail.html

@ -0,0 +1,182 @@
<!doctype html>
<html>
<head>
	<meta charset="utf-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<title>我的资料</title>
	<meta name="author" content="yihu.com"/>
	<meta name="format-detection" content="telephone=no">
	<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
	<meta name="apple-mobile-web-app-capable" content="yes">
	<meta name="apple-mobile-web-app-status-bar-style" content="black">
	<link rel="stylesheet" type="text/css" href="../../../css/mui.min.css" />
	<link rel="stylesheet" href="../../../css/cross.css">
	<link rel="stylesheet" href="../../../css/cross.ui.css">
	<link rel="stylesheet" href="../css/style.css">
	<link rel="stylesheet" type="text/css" href="../../../css/ss-style.css">
	<link rel="stylesheet" href="../css/my-detail.css">
	<link rel="stylesheet" type="text/css" href="../../../css/select-committee.css"/>
	<script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
	<style>
    	.mui-scroll{
    		width: auto!important;
    	}
    </style>
</head>
<body class="bgc-f3f3f3 no-user-select" onselectstart="return false">
	<div id="memberContainer"></div>
	<div id="content" style="padding-top: 0px;padding-bottom: 30px;">
		<!-- 头像、签约信息开始 -->
		<ul class="c-list c-border-b">
			<li class="c-list-link" id="add-btn">
				<div class="c-list-info" onclick="file_head.click()" id="chooseImage">
					<h4 class="c-nowrap">头像</h4>
					<input type="file" class="c-hide" id="file_head" accept="image/*" onchange="clip_photo()">
				</div>
				<div class="c-list-value">
					<div class="c-avatar-m c-images-cycle">
						<img id="photo" class="img-sign" src="" onclick="viewImg(this)">
					</div>
				</div>
			</li>
			<li class="c-list-text c-list-link">
				<div class="c-list-info" style="width: 150px;">
					<h4>姓名</h4>
				</div>
				<div class="c-list-info c-t-right" >
				    <input type="text" id="name" class="width-100 text-right" placeholder="" value="" readonly="readonly"/>
				</div>
			</li>
			<li class="c-list-text c-list-link">
				<div class="c-list-info">
					<h4 class="c-nowrap">性别</h4>
				</div>
				<div class="c-list-value" id="sex"></div>
			</li>
	    </ul>
		<!-- 头像、签约信息 结束 -->
		<!-- 姓名等基本信息 开始 -->
		<ul class="c-list c-border-tb mt10">
			<li class="c-list-text c-list-link" onclick="updateMobile()">
				<div class="c-list-info">
					<h4 class="c-nowrap">手机号码</h4>
				</div>
				<div class="c-list-value" id="mobile"></div>
				<div class="c-arrow-r"></div>
			</li>
			
			<li class="c-list-text c-list-link" onclick="updatePwd()">
				<div class="c-list-info">
					<h4 class="c-nowrap">登录密码</h4>
				</div>
				<div class="c-list-value" id="pwd">更换</div>
				<div class="c-arrow-r"></div>
			</li>
		</ul>
		<!-- 姓名等基本信息 结束 -->
		<!-- 身份证号码 各种号码 开始 -->
		<ul class="c-list c-border-tb mt10">
			
			<li class="c-list-text c-list-link">
				<div class="c-list-info">
					<h4 class="c-nowrap">身份证号</h4>
				</div>
				<div class="c-list-value" id="idcard"></div>
			</li>
			<li class="c-list-text c-list-link">
				<div class="c-list-info" style="width: 180px;">
					<h4>医保卡号</h4>
				</div>
				<div class="c-list-info c-t-right" >
				    <input type="text" id="ssc" class="width-100 text-right" placeholder="">
				</div>
			</li>
			<li class="c-list-text c-list-link" >
				<div class="c-list-info">
                    <h4 class="c-nowrap">医疗保险号</h4>
                </div>
                <div class="c-list-value" id="medicareNumber"></div>
			</li>
			<li class="c-list-text c-list-link" id="elecard">
				<div class="c-list-info">
                    <h4 class="c-nowrap">电子社保卡</h4>
                </div>
                <div class="c-list-value" id="elecardStatus"></div>
                <div class="c-arrow-r"></div>
			</li>
		    <li class="c-list-text c-list-link" id="healthcard">
                <div class="c-list-info">
                    <h4 class="c-nowrap">电子健康卡</h4>
                </div>
                <div class="c-list-value"></div>
                <div class="c-arrow-r"></div>
            </li>
			<li class="c-list-text c-list-link" id="selectType">
				<div class="c-list-info" style="width: 140px;">
					<h4>所属居委会</h4>
				</div>
				<div class="c-list-info c-t-right" >
					<div class="c-list-value" style="padding-right: 0;" id="committee"></div>
				</div>
				<div class="c-arrow-r"></div>
			</li>
			<li class="c-list-text c-list-link" onclick="updateAddress()">
				<div class="c-list-info" style="width: 180px;">
					<h4>详细地址</h4>
				</div>
				<div class="c-list-info c-t-right" >
					<div class="c-list-value" style="padding-right: 0;" id="address"></div>
				</div>
				<div class="c-arrow-r"></div>
			</li>
		</ul>
		<!-- 身份证号码 各种号码 结束 -->
		
		<ul class="c-list c-border-tb mt10 c-hide" id="myMedicine">
			<li class="c-list-text c-list-link" onclick="myMedicine()">
				<div class="c-list-info">
					<h4 class="c-nowrap">我的取药码</h4>
				</div>
				<div class="c-list-value" id="medicine"></div>
				<div class="c-arrow-r"></div>
			</li>
		</ul>
		<!--1.4.3电子健康卡入口迁移至首页2级菜单入口 ,替换现有"意见反馈"入口。意见反馈入口移入“我的资料”-->
		<ul class="c-list c-border-tb mt10">
			<li class="c-list-text c-list-link" onclick="myFeedback()">
				<div class="c-list-info">
					<h4 class="c-nowrap">意见反馈</h4>
				</div>
				<div class="c-arrow-r"></div>
			</li>
		</ul>
		<div class="mt20 mlr15" id="divChangeLogin">
	        <a id="changeLogin" href="change-login.html" class="c-btn c-btn-full c-btn-radius c-f18" style="background-color: #ff9526">切换家人账号</a>
	    </div>
	    <div class="mlr15 mt20">
	        <a id="backLogin" href="javascript:;" class="c-btn c-btn-full c-btn-radius c-f18" style="background-color: #ff6a56">退出当前账号</a>
	    </div>
	</div>
	
	<script type="text/javascript" src="../../../js/jquery/2.1.3/jquery.js"></script>
    <script type="text/javascript" src="../../../js/app.js" ></script>
    <script type="text/javascript" src="../../../js/mui.min.js" ></script>
    <script type="text/javascript" src="../../../js/common_http.js" ></script>
    <script type="text/javascript" src="../../../js/weixin_common.js" ></script>
    <link rel="stylesheet" type="text/css" href="../../../widget/artDialog/6.0.5/css/ui-dialog.min.css">
    <script src="../../../widget/artDialog/6.0.5/js/dialog-plus.min.js"></script>
    <script src="../../../js/underscore.js"></script>
	<script src="../../../js/es6-promise.js"></script>
	<script src="../js/transform.js" type="text/javascript" charset="utf-8"></script>
	<script src="../js/alloy_finger.js" type="text/javascript" charset="utf-8"></script>
	<script src="../js/alloy_crop.js" type="text/javascript" charset="utf-8"></script>
    <script src="../js/lrz.all.bundle.js" type="text/javascript" charset="utf-8"></script>
    <script src="../../../js/family-members.js"></script>
    <script src="../js/select-committee.js"></script>
    <script src="../../../js/isRepresented.js"></script>
	<script type="text/javascript" src="../js/my-detail.js" ></script>	
</body>
</html>

+ 120 - 0
html/grzx/html/my-doctor-advice.html

@ -0,0 +1,120 @@
<!doctype html>
<html>
	<head>
		<meta charset="utf-8">
		<meta http-equiv="X-UA-Compatible" content="IE=edge">
		<title>健康指导</title>
		<meta name="author" content="yihu.com" />
		<meta name="format-detection" content="telephone=no">
		<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
		<meta name="apple-mobile-web-app-capable" content="yes">
		<meta name="apple-mobile-web-app-status-bar-style" content="black">
		<script src="../../../js/app.js" type="text/javascript" charset="utf-8"></script>
		<link rel="stylesheet" href="../../../css/cross.css">
		<link rel="stylesheet" href="../../../css/cross.ui.css">
		<link rel="stylesheet" href="../css/style.css">
		<link rel="stylesheet" type="text/css" href="../css/zx-style.css">
	</head>
	<body class="bgc-f3f3f3">
		<!--<div class="h45">
			<div class="demo-comtop">
				<a class="mui-action-back"></a>
				<h1>健康指导</h1>
			</div>
		</div>-->
		<div class="">
			<ul class="c-list" id="ul_order">
				<!--<li class="c-list-cover" >
					<div class="c-avatar-m">
						<img class="c-images-cycle" src="../../../images/d-default.png">
					</div>
					<div class="c-list-info ptb10">
						<h4 class="c-333 c-f18" style="word-break: break-word;">1234567894524522655</h4>
						<p class="c-909090 c-f16">指导医生:徐小鹏</p>
						<p class="c-909090 c-f16">指导时间:2016-07-13</p>
					</div>
				</li>-->
			</ul>
		</div>
		<div style="text-align: center;">
			<a href="javascript:;" class="view-more c-5b5b5b c-f18" id="view_more">点击查看更多</a>
		</div> 
		<script type="text/javascript" src="../../../js/jquery/2.1.3/jquery.js"></script>
		<script type="text/javascript" src="../cross/js/cross.ui.js"></script>
		<script type="text/javascript" src="../js/public.js"></script>
		<script type="text/javascript" src="../../../js/mui.min.js"></script>
		<script src="../../../js/app.js" type="text/javascript" charset="utf-8"></script>
		<script type="text/javascript" src="../../../js/common_http.js"></script>
		<script type="text/javascript" src="../js/my-doctor-advice.js"></script>
		<link rel="stylesheet" type="text/css" href="../../../widget/artDialog/6.0.5/css/ui-dialog.min.css">
    	<script src="../../../widget/artDialog/6.0.5/js/dialog-plus.min.js"></script>
    	<script type="text/javascript" src="../../../js/weixin_common.js" ></script>
	</body>
	<script type="text/javascript">	
		var d = dialog({contentType:'load', skin:'bk-popup'});
		var id = 0;
		var pageSize = 15;
		var pagetype = 3;
		$(function() {	
			checkUserAgent();			
			//点击加载更多			
			document.getElementById('view_more').addEventListener("click", function() {	
				queryInit();
			});
		});		
		function queryInit() {
			d.show();
			var data = {};
			data.id = id;
			data.pagesize = pageSize;
			sendPost("patient/health/guidance/list", data, "json", "post", queryListFailed, queryAppoListSuccesss);
		}
		function queryListFailed(res) {
			d.close();
			if (res && res.msg) {
				var d1 = dialog({contentType:'tipsbox', skin:'bk-popup' , content:res.msg});
				d1.show();      
			} else {
				var d2 = dialog({contentType:'tipsbox', skin:'bk-popup' , content:'加载失败'});
				d2.show(); 
			}
		}		
		function queryAppoListSuccesss(res) {
			if (res.status == 200) {
				if (res.list.length > 0) {					
					var list = res.list;
					var $list = document.querySelector("#ul_order");
					for (var i = 0; i < list.length; i++) {
						var $li = document.createElement("li");
						id = list[i].id;
						var content1 = list[i].content;
						var name = list[i].name;
						var czrq = list[i].czrq;
						var photo = list[i].photo;
						if(photo == undefined || photo == null || photo == "")
							photo = "../../../images/d-default.png";
						$li.className = "c-list-cover";
						var content = '<div class="c-avatar-m"><img class="c-images-cycle" src="' + getImgUrl(photo) + '"></div>';
						content += '<div class="c-list-info ptb10">';
						content += '<h4 class="c-333" style="word-break: break-word;">'+ content1 + '</h4>';
						content += '<p class="c-909090">指导医生:' + name + '</p>';
						content += '<p class="c-909090">指导时间:' + czrq + '</p>';
						content += ' </div>';
						$li.innerHTML = content;
						$list.appendChild($li);							
					}					
				} else {
					document.querySelector("#view_more").innerText = "已无更多";
				}
				d.close();
			} else {
				//非200则为失败
				queryListFailed(res);
			}
		}
		
		
	</script>
</html>

+ 48 - 0
html/grzx/html/my-equipments.html

@ -0,0 +1,48 @@
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>我的设备</title>
        <meta name="format-detection" content="telephone=no"/>
        <meta name="viewport"
              content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
        <meta name="apple-mobile-web-app-capable" content="yes"/>
        <meta name="apple-mobile-web-app-status-bar-style" content="black"/>
        <link rel="stylesheet" href="../../../css/cross.css" type="text/css"/>
        <link rel="stylesheet" href="../../../css/cross.ui.css" type="text/css"/>
        <link rel="stylesheet" type="text/css" href="../../../iconfont/iconfont.css" />
        <link rel="stylesheet" type="text/css" href="../../../css/ss-style.css">
        <script type="text/javascript" src="../../../js/common_http.js" ></script>
        <script type="text/javascript" src="../../../js/weixin_common.js" ></script>
        <script type="text/javascript" src="../../../js/app.js" ></script>
        <script type="text/javascript" src="../../../js/mui.min.js" ></script>
    </head>
    <body>
        <!--<header class="h45">
            <div class="header-comtop">
                <a class="mui-action-back"></a>
                <h1>我的设备</h1>
                <a id="delEquip" class="operate" onclick="openWebview('delete-equipment.html')">删除</a>
            </div>
        </header>-->
        <ul id="equ_list" class="c-list c-border-tb mt10">
            <!--<li class="c-list-text c-list-link" >
               <div class="c-list-key" style="margin:0 auto;">您还没有设备,赶快添加吧</div>               
            </li>-->
            
            
        </ul>
        <div class="mlr15 mt20" >
            <a id="add_device" href="javascript:;" class="btn-green-l" onclick="window.open('add-equipment.html')">添加设备</a>
           <div style="height: 5px;"></div>
            <a id="delEquip" class="btn-green-l operate" style="background: coral;" onclick="window.open('delete-equipment.html')">删除</a>
        </div>
        <!--<a  >删除</a>-->
        <script src="../../../js/jquery/2.1.3/jquery.js"></script> 
        <link rel="stylesheet" type="text/css" href="../../../widget/artDialog/6.0.5/css/ui-dialog.min.css">
    	<script src="../../../widget/artDialog/6.0.5/js/dialog-plus.min.js"></script>
        <script src="../../../js/mui.min.js"></script>
        <script src="../js/my-equipments.js"></script>
        
    </body>
</html>

+ 61 - 0
html/grzx/html/my-health-card.html

@ -0,0 +1,61 @@
<!doctype html>
<html>
<head>
	<meta charset="utf-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<title>电子健康卡</title>
	<meta name="author" content="yihu.com"/>
	<meta name="format-detection" content="telephone=no">
	<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
	<meta name="apple-mobile-web-app-capable" content="yes">
	<meta name="apple-mobile-web-app-status-bar-style" content="black">
	<!--<link rel="stylesheet" type="text/css" href="../../../css/mui.min.css" />-->
	<link rel="stylesheet" href="../../../css/cross.css">
	<style type="text/css">
		.mh-nav{margin-top: 120px;}
		.mh-nav .img{width: 250px;margin: 0px auto 20px;}
		.mh-nav .img img{width: 100%;}
		.j-text{font-size: 16px;color: #666;text-align: center;}
		.j-text.red{color: #FF4C4C;}
	</style>
</head>
<body class="bgc-f3f3f3">
	<div class="mh-nav">
		<div class="img"><img src="../images/dianzijiankangka_img.png" alt="" /></div>
		<div class="j-text">正在为你<br>领取电子健康卡...</div>
	</div>
	<script type="text/javascript" src="../../../js/jquery/2.1.3/jquery.js"></script>
	<link rel="stylesheet" type="text/css" href="../../../widget/artDialog/6.0.5/css/ui-dialog.min.css">
    <script src="../../../widget/artDialog/6.0.5/js/dialog-plus.min.js"></script>
    <script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
    <!--<script type="text/javascript" src="../../../js/mui.min.js" ></script>-->
    <script type="text/javascript" src="../../../js/common_http.js" ></script>
    <script type="text/javascript" src="../../../js/weixin_common.js" ></script>
    
    <script  type="text/javascript">
    	var d = dialog({contentType:'load', skin:'bk-popup'});
    	var userAgent = window.localStorage.getItem(agentName);
    	var pagetype = 0;
    	$(function(){
    		checkUserAgent();
    	})
    	function queryInit(){
	        var url = "/patient/ehc/redirecturl";
	        sendPost(url, {}, 'json', 'post',function(){
	        	$('.j-text').text('请求失败')
	        	$('.j-text').addClass('red')
	        }, function(res){
	            if(res.status == 200){
	            	setTimeout(function(){
//	            		window.location.href = res.data;
                        window.location.replace(res.data);
	            	},1500)
	            }else{
	                $('.j-text').text('领取电子健康卡失败')
	                $('.j-text').addClass('red')
	            }
	        })
		}
    </script>
</body>
</html>

+ 105 - 0
html/grzx/html/set-remind-2.html

@ -0,0 +1,105 @@
<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>设置提醒</title>
    <meta name="author" content="yihu.com"/>
    <meta name="format-detection" content="telephone=no">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <link rel="stylesheet" href="../../../css/cross.css" type="text/css"/>
    <link rel="stylesheet" href="../../../css/cross.ui.css" type="text/css"/>
    <link rel="stylesheet" type="text/css" href="../../../iconfont/iconfont.css" />
    <link rel="stylesheet" type="text/css" href="../../../css/ss-style.css">
    <link rel="stylesheet" type="text/css" href="../css/zx-style.css">
    <script src="../../../js/jquery/2.1.3/jquery.js"></script>
    <script src="../../../widget/mobiscroll/2.15.1/js/mobiscroll.js"></script>
    <link rel="stylesheet" href="../../../widget/mobiscroll/2.15.1/css/mobiscroll.css"/>
    <script src="../../../js/mui.min.js"></script>
    <script src="../../../js/app.js"></script>
    <script src="../../../js/common_http.js"></script>
    <script src="../js/sanshitijiao.js" type="text/javascript" charset="utf-8"></script>
    <script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
    <link rel="stylesheet" type="text/css" href="../../../widget/artDialog/6.0.5/css/ui-dialog.min.css">
    <script src="../../../widget/artDialog/6.0.5/js/dialog-plus.min.js"></script>
</head>
<body class="bgc-f9f9f9">
<!--<div class="h45">
    <div class="demo-comtop">
        <a class="mui-action-back"></a>
        <h1>设置提醒</h1>
    </div>
</div>-->
<div class="c-main">
	<div class="wis-fix c-border-b mt15">
		<ul class="c-list patient-list c-border-t mt fosx-li" data-list="patientInfo">
			<li>
				<div class="c-list-value pr30">
					<h4><i class="required"></i>设置日期</h4>
				</div>
				<div class="c-list-info">
					<div class="input-group width-100">
						<input type="text" class="form-control width-100 no-border" placeholder="请选择设置日期" data-time="date" id="date">
						<span class="form-select-arrow"></span>
					</div>
				</div>
			</li>
			<li>
				<div class="c-list-value pr30">
					<h4><i class="required"></i>设置时间</h4>
				</div>
				<div class="c-list-info">
					<div class="input-group width-100">
						<input type="text" class="form-control width-100 no-border" placeholder="请选择时间" data-time="time" id="time">
						<span class="form-select-arrow"></span>
					</div>
				</div>
			</li>
		</ul>
	</div>
    <ul class="n-list c-border-tb mt10 doc-detail">
		<li class="ptb12">
			<div class="n-list-key pr15 c-f15"><i class="required"></i>提醒内容</div>
		</li>
		<li class="n-list-cover ptb12">
			<div class="n-list-info">
				<textarea id="txtContent" class="r-textarea" rows="4" placeholder="请尽可能描述清楚您的提醒(请至少输入10个字)。"></textarea>
			</div>
		</li>
	</ul>
    <div class="bottom-box clearfix mt20 plr15">
		<a href="javascript:;" id="save" class="c-btn-full c-btn-4dcd70 c-btn-radius fl c-f16">确定</a>
	</div>
</div>
</body>
<script type="text/javascript">
	$(function() {
		$('input[data-time=date]').mobiscroll({
			preset: 'date',
			theme: 'ios',
			lang: 'zh',
			minDate: new Date(1900, 01, 01)
		});
		$('input[data-time=time]').mobiscroll({
			theme: 'ios',
			lang: 'zh',
			formatValue: function(d) {
				return d.join(',');
			},
			customWheels: true,
			wheels: [
				[{
					keys: ['08:00', '08:30', '09:00', '10:00', '11:00', '12:00'],
					values: ['08:00', '08:30', '09:00', '10:00', '11:00', '12:00']
				}]
			],
			onSelect: function(valueText, inst) {
				var dd = eval("[" + valueText + "]");
				$('input[data-time=time]').val(dd[0].values);
			}
		});
	})
</script>
</html>

+ 270 - 0
html/grzx/html/shenfenyz.html

@ -0,0 +1,270 @@
<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <title>更换手机号-验证原号码</title>
    <meta name="format-detection" content="telephone=no"/>
    <meta name="viewport"
          content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
    <meta name="apple-mobile-web-app-capable" content="yes"/>
    <meta name="apple-mobile-web-app-status-bar-style" content="black"/>
    <link rel="stylesheet" href="../../../css/cross.css" type="text/css"/>
    <link rel="stylesheet" href="../../../css/cross.ui.css" type="text/css"/>
    <link rel="stylesheet" type="text/css" href="../../../css/ss-style.css">
    <link rel="stylesheet" type="text/css" href="../../../iconfont/iconfont.css" />
    <style>
    	.n-list-info{position: relative;}
    	.searchbar-clear{position: absolute;width: 28px;height: 28px;right: 0;top:8px;opacity:0;pointer-events:none;background-position:center;background-repeat:no-repeat;background-image:url(../../../images/delete01_pre.png);-webkit-background-size:20px 20px;background-size:20px 20px;-webkit-transition-duration:300ms;transition-duration:300ms;cursor:pointer;}
    	#div-yzm{width:80px;height:29px;border:1px solid #4DCD70;color:#4DCD70;font-size:14px;line-height:29px;text-align:center;border-radius:10px;margin-top:7px;}
		.c-btn-dcdcdc{background: #DCDCDC;}
		.c-btn.active{background: #4DCD70;}
    </style>
</head>
<body>
    
    <div class="main">
        <ul class="n-list edit-info registered c-border-tb mt15 c-f15 form-register">
          <li>
            <div class="n-list-key" style="width: 2.3em;">
                <i class="iconfont icon-shouji1"></i>
            </div>
            <div class="n-list-info">
                <input id="txtMobile" type="tel" readonly="readonly" class="width-100 c-f16 c-5b5b5b" maxlength="11" placeholder="请输入手机号码" onkeyup="this.value=this.value.replace(/[^\d]/g,'')"/>
            	<!--<a href="#" class="searchbar-clear"></a>-->
            </div>
          </li>
          <li>
            <div class="n-list-key" style="width: 2.3em;">
                <i class="iconfont icon-yanzhengma01"></i>
            </div>
            <div class="n-list-info">
            	<input id="txtCode" type="text" class="width-100 c-f16 c-5b5b5b" placeholder="请输入验证码"/>
            	<a href="#" class="searchbar-clear"></a>
            </div>
            <div id="messageCode1" class="n-list-key pl15 c-17b3ec" onclick="sendCode()">
                <span>获取短信验证码</span>
            </div>
            <div id="messageCode2" class="n-list-key pl15 c-999999" style="display: none;">
                <span id="message"></span>
            </div>
          </li>
        </ul>
        <div class="mb15 mlr15 mt20">
            <a href="javascript:;" style="font-size: 18px;" class="c-btn c-btn-dcdcdc c-btn-full c-btn-radius c-f16">下一步</a>
        </div>
    </div>
  
</body>
<script type="text/javascript" src="../../../js/jquery/2.1.3/jquery.js" ></script>
<script type="text/javascript" src="../../../js/common_http.js" ></script>
<script type="text/javascript" src="../../../js/weixin_common.js" ></script>
<link rel="stylesheet" type="text/css" href="../../../widget/artDialog/6.0.5/css/ui-dialog.min.css">
<script src="../../../widget/artDialog/6.0.5/js/dialog-plus.js"></script>
<script type="text/javascript" src="../../../js/commit_validate.js" ></script>
<script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
<script type="text/javascript">	
	var dd = dialog({contentType:'load', skin:'bk-popup', content:'验证中...'});
	var Request = new Object();
	Request = GetRequest(); 
	var openid = Request["openid"];
	var type = Number(Request["type"]);
	var mobile1 = Request["mobile"];
	var clock = "";
	var nums = 60;
	var loginParams = Request["loginParams"];
	isValueChange();//判断当前是否有输入值,有输入则登录按钮变亮
	bindEvents();
	
	if(loginParams) {
		loginParams = JSON.parse(decodeURIComponent( Request["loginParams"]));				
	}
	$(function (){
		if(mobile1){
			$("#txtMobile").val(mobile1);
		}
		var userAgent = window.localStorage.getItem(agentName);
        if(userAgent){
        	var paurl = "";        	
        	if(type == 0){
        		paurl = "wx/html/home/html/login.html?type=0&openid=" + openid;
        	}
        	else{
        		if(mobile1){
        			paurl = "wx/html/home/html/login.html?type=" + type + "&openid=" + openid + "&mobile=" + mobile1;
        		}
        		else{
        			paurl = "wx/html/home/html/login.html?type=" + type + "&openid=" + openid;
        		}
        	}
        	//从后台那边获取签名等信息
			var params = {};
			params.pageUrl = window.location.href;
			$.ajax(server + "weixin/getSign", {
				data: params,
				dataType: "json",
				type: "post",
				success: function(res){
					if (res.status == 200) {
						var t = res.data.timestamp;
						var noncestr = res.data.noncestr;
						var signature = res.data.signature;
						wx.config({		
							//debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
						    appId: appId, // 必填,公众号的唯一标识
						    timestamp: t, // 必填,生成签名的时间戳
						    nonceStr: noncestr, // 必填,生成签名的随机串
						    signature: signature,// 必填,签名,见附录1
						    jsApiList: [
						    	'closeWindow'
						    ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
						});
					} 
				}
			});
			/*wx.ready(function(){
				wx.closeWindow();			    
			});  */      	
        }
        else{
			if(!openid){
				dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'openid获取失败'}).show();
			}
		}
	})
	
	function bindEvents(){
		$(".c-btn").on("click",function(){
			if($(this).hasClass("active")){
				commit();
			}
		})
		
		$("input").on("focus",function(){
			$(".searchbar-clear").css("pointer-events","none").css("opacity",0);
			if($(this).val()){
				$(this).next().css("pointer-events","auto").css("opacity",1);
			}
		}).on("input",function(){
			$(this).next().css("pointer-events","auto").css("opacity",1);
		});
		
		$(".n-list-info").on("click",".searchbar-clear",function(){
			$(this).prev().val("");
			$(this).css("pointer-events","none").css("opacity",0);
			$(this).prev().focus();
			return false;
		});
	}
	function isValueChange(){
		var self = this;
		var int= setInterval(function() {
			if($("#txtMobile").val()&&$("#txtCode").val()){
				clearInterval(int);
				int = null;
				$(".c-btn").addClass("active");
			}
	
		},300);
	}
	
	function sendCode(){ 		
		var mobile = document.getElementById("txtMobile").value;
		if(!mobile){
			dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'请输入手机号'}).show(); 
			return;
		}
		if(!isphone(mobile)){
			dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'手机号格式不正确'}).show(); 
			return;
		}
		$("#messageCode1").hide();		 
		document.getElementById("message").innerHTML = nums+'秒后可重新获取';
		$("#messageCode2").show();
		clock = setInterval(doLoop, 1000); //一秒执行一次
		var data = {};
		data.mobile = mobile;
		data.type = 7;
		sendPost("common/captcha", data, "json", "post", sendFailed, sendSuccesss);			
	}
	//失败
	function sendFailed(res) {
		clearInterval(clock); //清除js定时器
	    $("#messageCode1").show();
	    $("#messageCode2").hide();
	    nums = 60; //重置时间
		if (res && res.msg) {
			dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();      
		} else {
			dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'获取失败'}).show(); 
		}
	}
	
	function sendSuccesss(res){
		if (res.status == 200) {
			
		}
		else{
			sendFailed(res);
		}
	}
	
	function doLoop(){
		nums--;
		if(nums > 0){
			document.getElementById("message").innerHTML = nums+'秒后可重新获取';
		}else{
		    clearInterval(clock); //清除js定时器
		    $("#messageCode1").show();
		    $("#messageCode2").hide();
		    nums = 60; //重置时间
		}
	}
	
	var mobile;
	function commit(){
		mobile = document.getElementById("txtMobile").value;
		var captcha = document.getElementById("txtCode").value;	
		if (!mobile || !captcha) {
			dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'手机号和验证码不能为空'}).show(); 
			return;
		}
		
		if(!isphone(mobile)){
			dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'手机号格式不正确'}).show(); 
			return;
		}
		
		dd.showModal();
		//拼请求内容
		var data = {};
		data.mobile = mobile;
		data.captcha = captcha;
		data.type = 7;
		
		sendPost("common/check_captcha", data, "json", "post", operateFailed, operateSuccesss);		
	}
	
	//失败
	function operateFailed(res) {
		dd.close();
		if (res && res.msg) {
			dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();      
		} else {
			dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'验证码验证失败'}).show(); 
		}
	}
	
	//成功调用登录接口
	function operateSuccesss(res) {
		if (res.status == 200) {
			window.location.href = "bangdingsj.html?type=" + type + "&openid=" + openid+ "&mobile="+ mobile;
			dd.close();
		} else {
			//非200则为失败
			operateFailed(res);
		}
	}
	
</script>
</html>

+ 195 - 0
html/grzx/html/shezhimima.html

@ -0,0 +1,195 @@
<!doctype html>
<html>
	<head>
		<meta charset="utf-8">
		<title>修改密码</title>
		<meta name="author" content="yihu.com" />
		<meta name="format-detection" content="telephone=no" />
		<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0" />
		<meta name="apple-mobile-web-app-capable" content="yes" />
		<meta name="apple-mobile-web-app-status-bar-style" content="black" />
		<link rel="stylesheet" href="../../../css/cross.css">
		<link rel="stylesheet" href="../../../css/cross.ui.css">
		<link rel="stylesheet" href="../css/shenfenyanzheng.css" type="text/css" />
	</head>
	<body style="background: #f3f3f3;">
		
		<div class="c-main mui-content">
			<div id="update">
				<ul class="n-list edit-list c-border-tb mt10">
					<li class="n-list-cover">
						<div class="n-list-key w3em c-f16">当前密码</div>
						<div class="n-list-info pl10 mui-input-row">
							<input id='opsd' type="password" class="ajax c-input width-100 mui-input-clear pr40 c-f16" placeholder="请输入当前密码" />
						</div>
					</li>
				</ul>
				<div style="padding-left: 20px;color: #909090; line-height: 30px;">
					初始密码为身份证后6位
				</div>
			</div>
			
			<ul class="n-list edit-list c-border-tb" id="info_list">
				<li class="n-list-cover" id="psd">
					<div class="n-list-key w3em c-f16">设置密码</div>
					<div class="n-list-info pl10 mui-input-row">
						<input type="password" class="reg-psd ajax c-input width-100 mui-input-clear pr40 c-f16" placeholder="请输入新密码" maxlength="11" />
					</div>
				</li>
				
				<li class="n-list-cover" id="a-psd">
					<div class="n-list-key w3em c-f16">确认密码</div>
					<div class="n-list-info pl10 mui-input-row">
						<input type="password" class="c-input width-100 mui-input-clear pr40 c-f16" placeholder="请再次输入新密码" maxlength="11" />
					</div>
				</li>
			</ul>
			<div class="plr10 mt15 pb20">
				<a onclick="submit()" class="c-btn c-btn-full c-btn-4dcd70 border-radius-rounded" id="next_step">确认提交</a>
			</div>
		</div>
		
		<script src="../../../js/jquery/2.1.3/jquery.js"></script>
		<script type="text/javascript" src="../../../js/mui.min.js"></script>
	    <script type="text/javascript" src="../../../js/app.js" ></script>
	    <script type="text/javascript" src="../../../js/weixin_common.js" ></script>
	    <script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
		<script src="../../../js/common_http.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../js/security.js" type="text/javascript" charset="utf-8"></script>
		<link rel="stylesheet" type="text/css" href="../../../widget/artDialog/6.0.5/css/ui-dialog.min.css">
    	<script src="../../../widget/artDialog/6.0.5/js/dialog-plus.min.js?11=11"></script>
		<script>
			var dd = dialog({contentType:'load', skin:'bk-popup', content:'修改中...'});
			var Request = new Object();
			Request = GetRequest(); 
			var openid = Request["openid"];
			var type = Number(Request["type"]);
			var mobile1 = Request["mobile"];
			var userAgent;
			$(function (){
				userAgent = window.localStorage.getItem(agentName);
		        if(userAgent){
		        	var paurl = "";        	
		        	if(type == 0){
		        		paurl = "wx/html/home/html/login.html?type=0&openid=" + openid;
		        	}
		        	else{
		        		if(mobile1){
		        			paurl = "wx/html/home/html/login.html?type=" + type + "&openid=" + openid + "&mobile=" + mobile1;
		        		}
		        		else{
		        			paurl = "wx/html/home/html/login.html?type=" + type + "&openid=" + openid;
		        		}
		        	}
		        	//从后台那边获取签名等信息
					var params = {};
					params.pageUrl = window.location.href;
					$.ajax(server + "weixin/getSign", {
						data: params,
						dataType: "json",
						type: "post",
						success: function(res){
							if (res.status == 200) {
								var t = res.data.timestamp;
								var noncestr = res.data.noncestr;
								var signature = res.data.signature;
								wx.config({		
									//debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
								    appId: appId, // 必填,公众号的唯一标识
								    timestamp: t, // 必填,生成签名的时间戳
								    nonceStr: noncestr, // 必填,生成签名的随机串
								    signature: signature,// 必填,签名,见附录1
								    jsApiList: [
//								    	'closeWindow'
								    ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
								});
							} 
						}
					});    	
		        }
		        else{
					if(!openid){
						dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'openid获取失败'}).show();
					}
				}
			})
			
			function validPsd(){
				var psd = $.trim($('.reg-psd').val());
				if(/.*[\u4e00-\u9fa5]+.*$/.test(psd)){
					dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'密码不可包含中文'}).show();
					return;
				}
				if(psd.length<6){
					dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'密码不得少于6位'}).show();
					return;
				}
				return psd;
			}
			function submit(){
				var opsd = $.trim($('#opsd').val());
				if(opsd==""){
					dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'请输入旧密码'}).show(); 
					return;
				}
				var psd = validPsd(),
				    apsd = $.trim($('#a-psd input').val());
				if(!psd)
					return;
				if(apsd == ""){
					dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'请输入确认密码!'}).show();
					return;
				}
				if(apsd != psd){
					dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'两次输入密码不一致!'}).show();
					return;
				}
				
				dd.showModal();
				//加密设置:获取公钥
				var encryURL = server + "login/public_key";
				var key = RSAUtils.getKeyFromServer(encryURL);
				//拼请求内容
				var data = {};
				data.oldPassword = RSAUtils.encryStr(key, opsd);
				data.newPassword1 = RSAUtils.encryStr(key, psd);
				data.newPassword2 = RSAUtils.encryStr(key, apsd);
				data.openid = openid;
				sendPost("patient/updatePassword", data, "json", "post", operateFailed, operateSuccesss);
			}
			
			//失败
			function operateFailed(res) {
				dd.close();
				if (res && res.msg) {
					dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();      
				} else {
					dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'修改失败'}).show(); 
				}
			}
			
			//成功调用登录接口
			function operateSuccesss(res) {
				if (res.status == 200) {
					dd.close();
					dialog({
						    content: '修改密码成功',
						    okValue:'确定',
						    ok: function (){				            		
						      	window.location.href = "my-detail.html?type=" + type + "&openid=" + openid;
						    }
				   	}).showModal();
				} else {
					//非200则为失败
					operateFailed(res);
				}
			}
		</script>
	
	</body>
</html>

+ 139 - 0
html/grzx/html/xiugaidizhi.html

@ -0,0 +1,139 @@
<!doctype html>
<html>
	<head>
		<meta charset="utf-8">
		<title>修改详细地址</title>
		<meta name="author" content="yihu.com" />
		<meta name="format-detection" content="telephone=no" />
		<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0" />
		<meta name="apple-mobile-web-app-capable" content="yes" />
		<meta name="apple-mobile-web-app-status-bar-style" content="black" />
		<link rel="stylesheet" href="../../../css/cross.css">
		<link rel="stylesheet" href="../../../css/cross.ui.css">
		<link rel="stylesheet" href="../css/shenfenyanzheng.css" type="text/css" />
	
	</head>
	<body style="background: #f3f3f3;">
		
		<div class="c-main mui-content">
			<ul class="n-list edit-list c-border-tb mt10">
				<li class="n-list-cover">
					<div class="n-list-key w3em c-f16">详细地址</div>
					<div class="n-list-info pl10 mui-input-row">
						<input id='address' type="text" class="ajax c-input width-100 mui-input-clear pr40 c-f16" placeholder="" />
					</div>
				</li>
			</ul>
			
			<div class="plr10 mt15 pb20">
				<a onclick="submit()" class="c-btn c-btn-full c-btn-4dcd70 border-radius-rounded" id="next_step">确认提交</a>
			</div>
		</div>
		
		<script src="../../../js/jquery/2.1.3/jquery.js"></script>
		<script type="text/javascript" src="../../../js/mui.min.js"></script>
	    <script type="text/javascript" src="../../../js/app.js" ></script>
	    <script type="text/javascript" src="../../../js/weixin_common.js" ></script>
	    <script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
		<script src="../../../js/common_http.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../js/security.js" type="text/javascript" charset="utf-8"></script>
		<link rel="stylesheet" type="text/css" href="../../../widget/artDialog/6.0.5/css/ui-dialog.min.css">
    	<script src="../../../widget/artDialog/6.0.5/js/dialog-plus.min.js"></script>
		<script>
			var dd = dialog({contentType:'load', skin:'bk-popup', content:'保存中...'});
			var Request = new Object();
			Request = GetRequest(); 
			var openid = Request["openid"];
			var type = Number(Request["type"]);
			var mobile1 = Request["mobile"];
			$(function (){
				var paramAgent = $.parseJSON(window.localStorage.getItem("paramAgent", paramAgent));
		        $('#address').val(decodeURI(paramAgent.address));
		        
				var userAgent = window.localStorage.getItem(agentName);
		        if(userAgent){
		        	var paurl = "";        	
		        	if(type == 0){
		        		paurl = "wx/html/home/html/login.html?type=0&openid=" + openid;
		        	}
		        	else{
		        		if(mobile1){
		        			paurl = "wx/html/home/html/login.html?type=" + type + "&openid=" + openid + "&mobile=" + mobile1;
		        		}
		        		else{
		        			paurl = "wx/html/home/html/login.html?type=" + type + "&openid=" + openid;
		        		}
		        	}
		        	//从后台那边获取签名等信息
					var params = {};
					params.pageUrl = window.location.href;
					$.ajax(server + "weixin/getSign", {
						data: params,
						dataType: "json",
						type: "post",
						success: function(res){
							if (res.status == 200) {
								var t = res.data.timestamp;
								var noncestr = res.data.noncestr;
								var signature = res.data.signature;
								wx.config({		
									//debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
								    appId: appId, // 必填,公众号的唯一标识
								    timestamp: t, // 必填,生成签名的时间戳
								    nonceStr: noncestr, // 必填,生成签名的随机串
								    signature: signature,// 必填,签名,见附录1
								    jsApiList: [
//								    	'closeWindow'
								    ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
								});
							} 
						}
					});    	
		        }
		        else{
					if(!openid){
						dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'openid获取失败'}).show();
					}
				}
			})
			
			function submit(){
				dd.showModal();
				var params = {};
				params.address = $("#address").val();
				sendPost('patient/save', params, 'json', 'post', operateFailed, operateSuccesss);
			}
			
			//失败
			function operateFailed(res) {
				dd.close();
				if (res && res.msg) {
					dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();      
				} else {
					dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'修改地址失败'}).show(); 
				}
			}
			
			//成功调用登录接口
			function operateSuccesss(res) {
				if (res.status == 200) {
					dd.close();
					dialog({
						    content: '修改地址成功',
						    okValue:'确定',
						    ok: function (){	            		
						      	window.location.href = "my-detail.html?type=" + type + "&openid=" + openid;
						    }
				   	}).showModal();
				} else {
					//非200则为失败
					operateFailed(res);
				}
			}
		</script>
	
	</body>
</html>

BIN
html/grzx/images/bc.jpg


BIN
html/grzx/images/dianzijiankangka_img.png


BIN
html/grzx/images/drugs1-a.png


BIN
html/grzx/images/drugs1-b.png


BIN
html/grzx/images/drugs1-c.png


BIN
html/grzx/images/drugs2-a.png


BIN
html/grzx/images/drugs2-b.png


BIN
html/grzx/images/drugs2-c.png


BIN
html/grzx/images/drugs3-a.png


BIN
html/grzx/images/drugs3-b.png


BIN
html/grzx/images/drugs3-c.png


BIN
html/grzx/images/drugs4-a.png


BIN
html/grzx/images/drugs4-b.png


BIN
html/grzx/images/drugs4-c.png


BIN
html/grzx/images/drugs5-a.png


BIN
html/grzx/images/drugs5-b.png


BIN
html/grzx/images/drugs5-c.png


BIN
html/grzx/images/ewm.png


BIN
html/grzx/images/fangda_icon.png


BIN
html/grzx/images/gouxuan_icon_btn.png


BIN
html/grzx/images/hospital-img.png


BIN
html/grzx/images/jiatingqianyue@2x.png


BIN
html/grzx/images/jiatingqianyue@3x.png


BIN
html/grzx/images/jiatingweiqianyue@2x.png


BIN
html/grzx/images/jiatingweiqianyue@3x.png


BIN
html/grzx/images/report-img1.png


BIN
html/grzx/images/report-img3.png


BIN
html/grzx/images/sanshiqianyue@2x.png


BIN
html/grzx/images/sanshiqianyue@3x.png


BIN
html/grzx/images/sanshiweiqianyue@2x.png


BIN
html/grzx/images/sanshiweiqianyue@3x.png


BIN
html/grzx/images/solvebg.png


BIN
html/grzx/images/star-off.png


BIN
html/grzx/images/star-on.png


BIN
html/grzx/images/suoxiao_icon.png


BIN
html/grzx/images/yp1.jpg


BIN
html/grzx/images/yp2.jpg


BIN
html/grzx/images/yp3.jpg


BIN
html/grzx/images/yp4.jpg


File diff suppressed because it is too large
+ 2 - 0
html/grzx/js/1.chunk.js


File diff suppressed because it is too large
+ 2 - 0
html/grzx/js/2.chunk.js


+ 296 - 0
html/grzx/js/alloy_crop.js

@ -0,0 +1,296 @@
/* AlloyCrop v0.1.3
 * By dntzhang
 * Github: https://github.com/AlloyTeam/AlloyFinger/tree/master/alloy_crop
 */
;(function(){
    var AlloyCrop = function (option) {
        this.renderTo = document.body;
        this.canvas = document.createElement("canvas");
        this.canvas.width = option.width;
        this.canvas.height = option.height;
        this.circle = option.circle;
        if (option.width !== option.height && option.circle) {
            throw "can't set circle to true when width is not equal to height"
        }
        this.ctx = this.canvas.getContext("2d");
        this.croppingBox = document.createElement("div");
        this.croppingBox.style.visibility = "hidden";
        this.cover = document.createElement("canvas");
        this.type = option.type || "png";
        this.cover.width = window.innerWidth;
        this.cover.height = window.innerHeight;
        this.cover_ctx = this.cover.getContext("2d");
        this.img = document.createElement("img");
        this.img.crossOrigin = "Anonymous";
        this.cancel = option.cancel;
        this.ok = option.ok;
        this.ok_text = option.ok_text || "ok";
        this.cancel_text = option.cancel_text || "cancel";
        this.croppingBox.appendChild(this.img);
        this.croppingBox.appendChild(this.cover);
        this.renderTo.appendChild(this.croppingBox);
        this.img.onload = this.init.bind(this);
        this.img.src = option.image_src;
        this.cancel_btn = document.createElement('a');
        this.cancel_btn.innerHTML = this.cancel_text;
        this.ok_btn = document.createElement('a');
        this.ok_btn.innerHTML = this.ok_text;
        this.croppingBox.appendChild(this.ok_btn);
        this.croppingBox.appendChild(this.cancel_btn);
        
        this.maxZoom = 2;
        
    };
    AlloyCrop.prototype = {
        init: function () {
            this.img_width = this.img.naturalWidth; 
            this.img_height = this.img.naturalHeight;
            this.initScale = window.innerWidth / this.img_width;
            
            this.img_max_width = this.img_width * this.maxZoom;
            this.img_min_width = this.canvas.width;
            Transform(this.img);
            this.curScale = this.initScale; 
            this.img.scaleX = this.img.scaleY = this.curScale;
            
            var initCr = this.img.getBoundingClientRect();
            var self = this;
            new AlloyFinger(this.croppingBox, {
                multipointStart: function () {
                    self.curScale = self.img.scaleX;
                },
                pinch: function (evt) {
                    self.img.scaleX = self.img.scaleY = self.curScale * evt.scale;
                    var cr = self.img.getBoundingClientRect();
                    if(self.img.scaleX >= self.initScale * self.maxZoom){
                        self.img.scaleX = self.img.scaleY = self.initScale * self.maxZoom;
                    }
                    if(cr.width <= self.img_min_width){
                        var scaleFn = function(){
                            if( self.img.scaleX < self.initScale){
                                self.img.scaleX = self.img.scaleY += 0.02;
                                requestAnimationFrame(scaleFn);
                            }else{
                                self.img.scaleX = self.img.scaleY = self.initScale * 1;
                            }
                        }
                        scaleFn();
                    }
                },
                pressMove: function (evt) {
                    //获得取景框的坐标
                    var w = self.cover.width,
                        h = self.cover.height,
                        cw = self.canvas.width,
                        ch = self.canvas.height,
                        rx = w/2 - cw/2,
                        ry = h/2 -ch/2;
                    var cr = self.img.getBoundingClientRect();
                    
                    var tx = evt.deltaX,
                        ty = evt.deltaY,
                        sx = 0, sy = 0;
                    
                    if((cr.left + evt.deltaX) > rx){
                        tx = rx - cr.left;
                    } else if((cr.left + evt.deltaX + cr.width) < (rx + cw)){
                        tx = (rx + cw) - (cr.left + cr.width);
                    }
                    if((cr.top + evt.deltaY) > ry){
                        ty = ry - cr.top;
                    } else if((cr.top + evt.deltaY + cr.height) < (ry +ch)){
                        ty = (ry + ch) - (cr.top + cr.height);
                    }
                    
                    self.img.translateX += tx;
                    self.img.translateY += ty;
                    evt.preventDefault();
                }
            });
//          new AlloyFinger(this.cancel_btn, {
//              click: this._cancel.bind(this)
//          });
            
            this.cancel_btn.addEventListener("click", function(){
                self._cancel();
            });
//          new AlloyFinger(this.ok_btn, {
//              click: this._ok.bind(this)
//          });
            this.ok_btn.addEventListener("click", function(){
                self._ok();
            });
            this.renderCover();
            this.setStyle();
        },
        _cancel: function () {
            this._css(this.croppingBox, {
                display: "none"
            });
            this.clearFile();
            this.cancel();
        },
        _ok: function () {
            this.crop();
            this._css(this.croppingBox, {
                display: "none"
            });
            this.ok(this.canvas.toDataURL("image/" + this.type), this.canvas);
        },
        renderCover: function () {
            var ctx = this.cover_ctx,
                w = this.cover.width,
                h = this.cover.height,
                cw = this.canvas.width,
                ch = this.canvas.height;
            ctx.save();
            ctx.fillStyle = "black";
            ctx.globalAlpha = 0.7;
            ctx.fillRect(0, 0, this.cover.width, this.cover.height);
            ctx.restore();
            ctx.save();
            ctx.globalCompositeOperation = "destination-out";
            ctx.beginPath();
            if (this.circle) {
                ctx.arc(w / 2, h / 2, cw / 2 - 4, 0, Math.PI * 2, false);
            } else {
                ctx.rect(w / 2 - cw / 2, h / 2 - ch / 2, cw, ch)
            }
            ctx.fill();
            ctx.restore();
            ctx.save();
            ctx.beginPath();
            ctx.strokeStyle = "white";
            if (this.circle) {
                ctx.arc(w / 2, h / 2, cw / 2 - 4, 0, Math.PI * 2, false);
            } else {
                ctx.rect(w / 2 - cw / 2, h / 2 - ch / 2, cw, ch)
            }
            ctx.stroke();
        },
        setStyle: function () {
            this._css(this.cover, {
                position: "absolute",
                zIndex: "100",
                left: "0px",
                top: "0px"
            });
            this._css(this.croppingBox, {
                color: "white",
                textAlign: "center",
                fontSize: "18px",
                textDecoration: "none",
                visibility: "visible"
            });
            this._css(this.img, {
                position: "absolute",
                zIndex: "99",
                left: "50%",
                // error position in meizu when set the top  50%
                top: window.innerHeight / 2 + "px",
                marginLeft: this.img_width / -2 + "px",
                marginTop: this.img_height / -2 + "px"
            });
            this._css(this.ok_btn, {
                position: "fixed",
                zIndex: "101",
                width: "100px",
                right: "50px",
                lineHeight: "40px",
                height: "40px",
                bottom: "20px",
                borderRadius: "2px",
                backgroundColor: "#836FFF"
            });
            this._css(this.cancel_btn, {
                position: "fixed",
                zIndex: "101",
                width: "100px",
                height: "40px",
                lineHeight: "40px",
                left: "50px",
                bottom: "20px",
                borderRadius: "2px",
                backgroundColor: "#836FFF"
            });
        },
        crop: function () {
            this.calculateRect();
            var self = this;
            var x0 = self.crop_rect[0],
                y0 = self.crop_rect[1],
                w = self.crop_rect[2],
                h = self.crop_rect[3];
            
//          self.ctx.drawImage(self.img, x0, y0, w, h, 0, 0, self.canvas.width * window.devicePixelRatio, self.canvas.height * window.devicePixelRatio);
            self.ctx.drawImage(self.img, x0, y0, w, h, 0, 0, self.canvas.width, self.canvas.height);
        },
        calculateRect: function () {
            var cr = this.img.getBoundingClientRect();
            var c_left = (window.innerWidth - this.canvas.width).toFixed(2) / 2;
            var c_top = (window.innerHeight - this.canvas.height).toFixed(2)/2;
            var cover_rect = [c_left, c_top, this.canvas.width + c_left, this.canvas.height + c_top];
            var cleft = Math.round(cr.left),
                ctop = Math.round(cr.top),
                cwidth = Math.round(cr.width),
                cheight = Math.round(cr.height);
            var img_rect = [cleft, ctop, cwidth + cleft, cheight + ctop];
            var intersect_rect = this.getOverlap.apply(this, cover_rect.concat(img_rect));
            var left = Math.round((intersect_rect[0] - img_rect[0]) / this.img.scaleX);
            var top = Math.round((intersect_rect[1] - img_rect[1]) / this.img.scaleY);
            var width = Math.round(intersect_rect[2] / this.img.scaleX);
            var height = Math.round(intersect_rect[3] / this.img.scaleY);
            if (left < 0) left = 0;
            if (top < 0) top = 0;
            if (left + width > this.img_width) width = this.img_width - left;
            if (top + height > this.img_height) height = this.img_height - top;
            this.crop_rect = [left, top, width, height];
        },
        // top left (x1,y1) and bottom right (x2,y2) coordination
        getOverlap: function (ax1, ay1, ax2, ay2, bx1, by1, bx2, by2) {
            if (ax2 < bx1 || ay2 < by1 || ax1 > bx2 || ay1 > by2) return [0, 0, 0, 0];
            var left = Math.max(ax1, bx1);
            var top = Math.max(ay1, by1);
            var right = Math.min(ax2, bx2);
            var bottom = Math.min(ay2, by2);
            return [left, top, right - left, bottom - top]
        },
        _css: function (el, obj) {
            for (var key in obj) {
                if (obj.hasOwnProperty(key)) {
                    el.style[key] = obj[key];
                }
            }
        },
        clearFile: function(){
            var str ='<input type="file" class="c-hide" id="file_head" accept="image/*" capture="camera" onchange="clip_photo()">';
            $("#file_head").remove();
            $("#chooseImage").append(str);
        }
    };
    if (typeof module !== 'undefined' && typeof exports === 'object') {
        module.exports = AlloyCrop;
    }else {
        window.AlloyCrop = AlloyCrop;
    }
})();

+ 210 - 0
html/grzx/js/alloy_finger.js

@ -0,0 +1,210 @@
/* AlloyFinger v0.1.3
 * By dntzhang
 * Github: https://github.com/AlloyTeam/AlloyFinger
 */
; (function () {
    function getLen(v) {
        return Math.sqrt(v.x * v.x + v.y * v.y);
    }
    function dot(v1, v2) {
        return v1.x * v2.x + v1.y * v2.y;
    }
    function getAngle(v1, v2) {
        var mr = getLen(v1) * getLen(v2);
        if (mr === 0) return 0;
        var r = dot(v1, v2) / mr;
        if (r > 1) r = 1;
        return Math.acos(r);
    }
    function cross(v1, v2) {
        return v1.x * v2.y - v2.x * v1.y;
    }
    function getRotateAngle(v1, v2) {
        var angle = getAngle(v1, v2);
        if (cross(v1, v2) > 0) {
            angle *= -1;
        }
        return angle * 180 / Math.PI;
    }
    var AlloyFinger = function (el, option) {
        this.element = typeof el == 'string' ? document.querySelector(el) : el;
        this.element.addEventListener("touchstart", this.start.bind(this), false);
        this.element.addEventListener("touchmove", this.move.bind(this), false);
        this.element.addEventListener("touchend", this.end.bind(this), false);
        this.element.addEventListener("touchcancel", this.cancel.bind(this), false);
        this.preV = { x: null, y: null };
        this.pinchStartLen = null;
        this.scale = 1;
        this.isDoubleTap = false;
        var noop = function () { };
        this.rotate = option.rotate || noop;
        this.touchStart = option.touchStart || noop;
        this.multipointStart = option.multipointStart || noop;
        this.multipointEnd = option.multipointEnd || noop;
        this.pinch = option.pinch || noop;
        this.swipe = option.swipe || noop;
        this.tap = option.tap || noop;
        this.doubleTap = option.doubleTap || noop;
        this.longTap = option.longTap || noop;
        this.singleTap = option.singleTap || noop;
        this.pressMove = option.pressMove || noop;
        this.touchMove = option.touchMove || noop;
        this.touchEnd = option.touchEnd || noop;
        this.touchCancel = option.touchCancel || noop;
        //add click
        this.click = option.click || noop;
        this.delta = null;
        this.last = null;
        this.now = null;
        this.tapTimeout = null;
        this.touchTimeout = null;
        this.longTapTimeout = null;
        this.swipeTimeout = null;
        this.x1 = this.x2 = this.y1 = this.y2 = null;
        this.preTapPosition = { x: null, y: null };
    };
    AlloyFinger.prototype = {
        start: function (evt) {
            if (!evt.touches) return;
            this.now = Date.now();
            this.x1 = evt.touches[0].pageX;
            this.y1 = evt.touches[0].pageY;
            this.delta = this.now - (this.last || this.now);
            this.touchStart(evt);
            if (this.preTapPosition.x !== null) {
                this.isDoubleTap = (this.delta > 0 && this.delta <= 250 && Math.abs(this.preTapPosition.x - this.x1) < 30 && Math.abs(this.preTapPosition.y - this.y1) < 30);
            }
            this.preTapPosition.x = this.x1;
            this.preTapPosition.y = this.y1;
            this.last = this.now;
            var preV = this.preV,
                len = evt.touches.length;
            if (len > 1) {
                this._cancelLongTap();
                var v = { x: evt.touches[1].pageX - this.x1, y: evt.touches[1].pageY - this.y1 };
                preV.x = v.x;
                preV.y = v.y;
                this.pinchStartLen = getLen(preV);
                this.multipointStart(evt);
            }
            this.longTapTimeout = setTimeout(function () {
                this.longTap(evt);
            }.bind(this), 750);
        },
        move: function (evt) {
            if (!evt.touches) return;
            var preV = this.preV,
                len = evt.touches.length,
                currentX = evt.touches[0].pageX,
                currentY = evt.touches[0].pageY;
            this.isDoubleTap = false;
            if (len > 1) {
                var v = { x: evt.touches[1].pageX - currentX, y: evt.touches[1].pageY - currentY };
                if (preV.x !== null) {
                    if (this.pinchStartLen > 0) {
                        evt.scale = getLen(v) / this.pinchStartLen;
                        this.pinch(evt);
                    }
                    evt.angle = getRotateAngle(v, preV);
                    this.rotate(evt);
                }
                preV.x = v.x;
                preV.y = v.y;
            } else {
                if (this.x2 !== null) {
                    evt.deltaX = currentX - this.x2;
                    evt.deltaY = currentY - this.y2;
                } else {
                    evt.deltaX = 0;
                    evt.deltaY = 0;
                }
                this.pressMove(evt);
            }
            this.touchMove(evt);
            this._cancelLongTap();
            this.x2 = currentX;
            this.y2 = currentY;
            if (evt.touches.length > 1) {
                this._cancelLongTap();
                evt.preventDefault();
            }
        },
        end: function (evt) {
            if (!evt.changedTouches) return;
            this._cancelLongTap();
            var self = this;
            if (evt.touches.length < 2) {
                this.multipointEnd(evt);
            }
            this.touchEnd(evt);
            //swipe
            if ((this.x2 && Math.abs(this.x1 - this.x2) > 30) ||
                (this.y2 && Math.abs(this.preV.y - this.y2) > 30)) {
                evt.direction = this._swipeDirection(this.x1, this.x2, this.y1, this.y2);
                this.swipeTimeout = setTimeout(function () {
                    self.swipe(evt);
                }, 0)
            } else {
                this.tapTimeout = setTimeout(function () {
                    self.tap(evt);
                    // trigger double tap immediately
                    if (self.isDoubleTap) {
                        self.doubleTap(evt);
                        clearTimeout(self.touchTimeout);
                        self.isDoubleTap = false;
                    } else {
                        self.touchTimeout = setTimeout(function () {
                            self.singleTap(evt);
                        }, 250);
                    }
                }, 0)
            }
            this.preV.x = 0;
            this.preV.y = 0;
            this.scale = 1;
            this.pinchStartLen = null;
            this.x1 = this.x2 = this.y1 = this.y2 = null;
        },
        cancel: function (evt) {
            clearTimeout(this.touchTimeout);
            clearTimeout(this.tapTimeout);
            clearTimeout(this.longTapTimeout);
            clearTimeout(this.swipeTimeout);
            this.touchCancel(evt);
        },
        _cancelLongTap: function () {
            clearTimeout(this.longTapTimeout);
        },
        _swipeDirection: function (x1, x2, y1, y2) {
            return Math.abs(x1 - x2) >= Math.abs(y1 - y2) ? (x1 - x2 > 0 ? 'Left' : 'Right') : (y1 - y2 > 0 ? 'Up' : 'Down')
        }
    };
    if (typeof module !== 'undefined' && typeof exports === 'object') {
        module.exports = AlloyFinger;
    } else {
        window.AlloyFinger = AlloyFinger;
    }
})();

+ 263 - 0
html/grzx/js/change-login.js

@ -0,0 +1,263 @@
var d = dialog({contentType:'load', skin:'bk-popup'});
var dd = dialog({contentType:'load', skin:'bk-popup', content:'提交中...'});
var id = 0;
var openid =null;
var userUid =null;
//var firstUid = window.localStorage.getItem("firstUid");
//var firstName = window.localStorage.getItem("firstName");
var userAgent = window.localStorage.getItem(agentName);
var username = "";
var userphoto = "../../../images/p-default.png";
var index = 0;
var usercode = "";
var chooseName = "";
var pagetype=11;
if(userAgent){
	var jsonstr = $.parseJSON(userAgent);
	openid = jsonstr.openid;
	userUid = jsonstr.uid;
}
var scroller1 = new IScrollPullUpDown('wrapper',{
	probeType:2,
	bounceTime: 250,
	bounceEasing: 'quadratic',
	mouseWheel:false,
	scrollbars:true,
	fadeScrollbars:true,
	click:true,
	interactiveScrollbars:false
}, pullDownAction, null);
$(function(){
	$(".tips a").on("click", function () {
		window.location.href = server + "wx/html/home/html/zhmm-login.html?type=11&openid=" + openid;
	});
	// 判断是否登录
	checkUserAgent();
	// 点击咨询详情
	$("body").on("tap", ".n-list", function () {
		index = $(this).parents("li").index();
		if ($(this).is(".list-last")) {
			window.location.href = "../../jtgx/html/add-step1.html";
		} else if ($(this).is(".on")) {
			return ;
		} else {
			dd.show();
			chooseName = $(this).find("h2").html();
			var data = {};
			data.family = $(this).data("code");
			data.openid = openid;
			sendPost("patient/switch_account", data, "json", "post", changeFailed, changeSuccesss);
		}
	});
	// 点击登录
	$("#login").on("click", function () {
			clearAgent();
			window.location.href = "../../home/html/zhmm-login.html?type=11&openid="+openid;
	});
});
//下拉刷新
function pullDownAction(theScrollerTemp) {
	$(".pullDown").show();
	setTimeout(function () {
		$("#ul_family").html("");
		queryInit();
	}, 1000);
}
//上拉加载数据
function pullUpAction(theScrollerTemp) {
	$(".pullUp").show();
	setTimeout(function () {
		queryInit();
	}, 1000);
}
// 禁止拖动
document.addEventListener('touchmove', function (e) { e.preventDefault(); }, false);
/**
 * 界面数据初始化
 */
function queryInit() {
	d.show();
	var data={};
	sendPost('patient/baseinfo', data, 'json', 'post', queryFailed, querySuccess);
}
function queryFailed(res) {
	d.close();
	if (res && res.msg) {
		var d1 = dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();     
	} else {
		var d2 = dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'加载失败'}).show(); 
	}
}
function querySuccess(res) {
	if (res.status == 200) {
		var resData = res.data;
		if (resData.name) {
			username = resData.name;
			// 提示
			// var text;
			// if (userUid == firstUid) {
			// 	text = '您可在首次登录账号的家人中自由切换,若需切换到其他账号,请直接登录其账号。<a id="login" href="javascript:;">登陆其他账号</a>'
			// } else {
			// 	text = '因您通过' + firstName + '账号切换过来,故只可切换至与' + firstName + '有家庭关系的账号,已自动过滤不可切换的账号。若想切换到' + username + '的其他家人账号,请直接登录' + username + '账号后切换。<a id="login" href="javascript:;">登陆其他账号</a>';
			// }
			// $("#tip").html(text);
		}
		if (resData.photo && resData.photo != "") {
			userphoto = getImgUrl(resData.photo);
		}
		var data = {};
		data.patient = userUid;
		usercode = resData.code;
		data.isAgree = 1;//已经同意授权
		sendPost("patient/family/members", data, "json", "get", queryListFailed, queryAppoListSuccesss);
	} else {
		//非200则为失败
		queryFailed(res);
	}
}
function queryListFailed(res) {
	d.close();
	if (res && res.msg) {
		var d1 = dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();     
	} else {
		var d2 = dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'加载失败'}).show(); 
	}
}
function queryAppoListSuccesss(res) {
	if (res.status == 200) {
		var $list = document.querySelector("#ul_family");
		var $liFirst = document.createElement("li");
	    firstContent = '<div class="n-list dr-item c-border on" data-code="' + usercode + '">'+
							'<div class="n-list-li">'+
								'<div class="n-list-key">'+
									'<div class="n-avatar-l">'+
										'<img class="c-images-cycle" src="' + userphoto + '">'+
									'</div>'+
								'</div>'+
								'<div class="n-list-info pl15">'+
									'<h2>' + username + '</h2>'+
									// '<p>自己</p>'+
								'</div>'+
								'<div class="n-list-key checked">'+
									'<i class="icon-checked"></i>'+
								'</div>'+
							'</div>'+
						'</div>';
	    $liFirst.innerHTML = firstContent;
		$list.appendChild($liFirst);
		if (res.data.normalmembers.length > 0) {
			var list = res.data.normalmembers;
			for (var i = 0; i < list.length; i++) {
				var $li = document.createElement("li");
				var code = list[i].code;
				var name = list[i].name;
				var familyRelationName = list[i].familyRelationName;
				var photo = getImgUrl(list[i].photo);
				
				if(userUid == code){
					continue;
				}
				// 头像为空设置默认头像
				if(photo == undefined || photo == null || photo == ""){
					photo = "../../../images/p-default.png";
				}
				var childContent = "";
				childContent =  '<div class="n-list dr-item c-border" data-code="' + code + '">'+
									'<div class="n-list-li">'+
										'<div class="n-list-key">'+
											'<div class="n-avatar-l">'+
												'<img class="c-images-cycle" src="' + photo + '">'+
											'</div>'+
										'</div>'+
										'<div class="n-list-info pl15">'+
											'<h2>' + name + '</h2>'+
											// '<p>' + familyRelationName + '</p>'+
										'</div>'+
										'<div class="n-list-key checked">'+
											'<i class="icon-checked"></i>'+
										'</div>'+
									'</div>'+
								'</div>';
				$li.innerHTML = childContent;
				$list.appendChild($li);
			}
			// var $liLast = document.createElement("li");
		 //    lastContent = '<div class="n-list list-last dr-item c-t-center">'+
		 //            			'<i class="icon-add"></i>'+
		 //            			'<p>添加家人</p>'+
		 //            		'</div>';
		 //    $liLast.innerHTML = lastContent;
			// $list.appendChild($liLast);
		} 
		// else {
		// 	var $li = document.createElement("li");
		// 	var content =   '<div class="n-list list-last dr-item c-t-center">'+
		//             			'<i class="icon-add"></i>'+
		//             			'<p>添加家人</p>'+
	 //            			'</div>';
		// 	$li.innerHTML = content;
		// 	$list.appendChild($li);
		// }
		d.close();
		scroller1.myScroll.refresh();
		$(".pullUp").hide();
		$(".pullDown").hide();
	} else {
		//非200则为失败
		queryListFailed(res);
	}
}
function changeFailed(res) {
	dd.close();
	if (res && res.msg) {
		var d1 = dialog({contentType:'tipsbox', skin:'bk-popup' , content:res.msg}).show();
	} else {
		var d2 = dialog({contentType:'tipsbox', skin:'bk-popup' , content:'加载失败'}).show();
	}
}
function changeSuccesss(res) {
	if (res.status == 200) {
		dd.close();
		var d1 = dialog({contentType:'tipsbox', skin:'bk-popup' , content:res.msg}).show();
		var resData = res.data;
		$("#ul_family").find(".n-list").removeClass("on");
		$("#ul_family").find("li").eq(index).find(".n-list").addClass("on");
		wxSaveUserAgent(resData.id, resData.uid, openid, resData.token,resData.lastUid);
		wxSaveUserAgent1(resData.uid, resData.name, resData.photo);
		 setTimeout(function () {
		 	window.location.href = "my-detail.html";
		 }, 1000);
	} else {
		//非200则为失败
		changeFailed(res);
	}
	// else if (res.status == -2) {
	// 	dd.close();
	// 	var d2 = dialog({
	// 				content:'对不起,您与' + chooseName + '无家庭关系哦,如需登录' + chooseName + '账号,请直接登录或登录' + chooseName + '账号后切换',
	// 				okValue: "直接登录",
	// 				ok: function (){
	// 					var jsonstr = $.parseJSON(agentOpenid);
	// 				    var openid = jsonstr.openid;
	// 				    window.location.href = server + "wx/html/home/html/zhmm-login.html?type=11&openid=" + openid;
	// 				},
	// 				cancelValue: "不了,谢谢",
	// 				cancel: function () {
						
	// 				}
	// 			}).showModal();
	// }
}

+ 248 - 0
html/grzx/js/clip_photo.js

@ -0,0 +1,248 @@
var windowHeight = document.documentElement.clientHeight,
    windowWidth = document.documentElement.clientWidth,
    footerHeight = $("nav").height(),
    headerHeight = $("#header").height(),
    contentHeight = windowHeight - footerHeight - headerHeight,
    canvas = document.getElementById('clipImg'),
    imgWidth ,
    imgHeight,
    clickCount = 0;
    
var Clip = {
    size: 200, //表示正方形的边长,乘上一个基数就是当前的像素值
    range: {}, //用来控制正方形的边界值
    topCss: (windowHeight - this.size) / 2,
    leftCss: (windowWidth - this.size) / 2,
    touchX: 0,
    touchY: 0,
    timer: null,
    imgUrl:"",
    init: function(){
        //等比例缩放图片(如果图片宽高都比容器小,则绘制的图片宽高 = 原图片的宽高。)
        //如果图片的宽度或者高度比容器大,则宽度或者高度 = 容器的宽度或者高度,另一高度或者宽度则等比例缩放
        var cxt = canvas.getContext('2d');
        var img = new Image();
        img.src = this.imgUrl;
//      img.src = "../images/xing.jpeg";
        
        img.onload = function(){
            if ( img.width < windowWidth && img.height < contentHeight) {
              imgWidth = img.width;
              imgHeight = img.height;
          
            } else {
              var pWidth = img.width / (img.height / contentHeight);
              var pHeight = img.height / (img.width / windowWidth);
              imgWidth = pWidth > windowWidth ? windowWidth : pWidth;
              imgHeight = pHeight > contentHeight ? contentHeight : pHeight;
            }
            
            canvas.height = imgHeight;
            canvas.width = imgWidth;
            canvas.style.left = (windowWidth - imgWidth) / 2 + 'px';;
            canvas.style.top = (contentHeight - imgHeight) / 2 + headerHeight + 'px';
            
            cxt.drawImage(img,0,0,imgWidth,imgHeight);
            
            Clip.changeBase(0);
            bindClipEvent();
        }
        
        
    },
    changeBase: function(index) {
        //这个函数用来改变正方形的边长
        this.size += index * 5 ;
        if(this.size > imgHeight || this.size > imgWidth){
            this.size = imgHeight>imgWidth ? imgWidth : imgHeight;
        }
        if((this.size + this.leftCss) > (parseFloat(canvas.style.left) + imgWidth)){
            var left = (this.size + this.leftCss) - (parseFloat(canvas.style.left) + imgWidth);
            this.leftCss = this.leftCss - left;
        }
        
        if((this.size + this.topCss) > (parseFloat(canvas.style.top) + imgHeight)){
            var top = (this.size + this.topCss) - (parseFloat(canvas.style.top) + imgHeight);
            this.topCss = this.topCss - top;
        }
        $("#clip").css({
            height: this.size + 'px',
            width: this.size + 'px',
            lineHeight: this.size + 'px'
        });
        this.changeRange();
    },
    changeRange: function() {
        //这个方法用来计算初始top,left以及边界值。相对clipContent而言
        if(isNaN(this.topCss)) {
            this.topCss = (contentHeight - this.size) / 2 + headerHeight;
        }
        if(isNaN(this.leftCss)) {
            this.leftCss = (windowWidth - this.size) / 2;
        }
        this.changeClipStyle(this.leftCss, this.topCss);
        //极限值,需控制不超出图片区域
        var minTop = (contentHeight - imgHeight)/2 + headerHeight;
        var maxTop = (contentHeight - imgHeight)/2+ headerHeight+ imgHeight - this.size;
        var minLeft = (windowWidth - imgWidth)/2;
        var maxLeft = (windowWidth - imgWidth)/2 + imgWidth - this.size;
        this.range = {
            minTop: minTop,
            maxTop: maxTop,
            minLeft: minLeft,
            maxLeft: maxLeft
        };
    },
    //设置新的样式,并改变当前的top和left值
    changeClipStyle: function(leftCss, topCss) {
        $('#clip').css({
            left: leftCss + 'px',
            top: topCss + 'px'
        });
        Clip.leftCss = leftCss;
        Clip.topCss = topCss;
    }
};
var bindClipEvent = function(){
    var clip = document.getElementById('clip');
    clip.addEventListener('touchstart', function(event) {
        event.preventDefault();
        var x = event.touches ? event.touches[0].clientX : event.screenX;
        var y = event.touches ? event.touches[0].clientY : event.screenY;
        Clip.touchX = x;
        Clip.touchY = y;
    });
    clip.addEventListener('touchmove', function(event) {
        if(Clip.timer != null) {
            return;
        }
        Clip.timer = setTimeout(function() {
            var x = event.touches ? event.touches[0].clientX : event.screenX;
            var y = event.touches ? event.touches[0].clientY : event.screenY;
            var disX = x - Clip.touchX;
            var disY = y - Clip.touchY;
            var nowLeft = Clip.leftCss + disX;
            var nowTop = Clip.topCss + disY;
            if(nowLeft < Clip.range.minLeft) {
                nowLeft = Clip.range.minLeft;
            }
            if(nowLeft > Clip.range.maxLeft) {
                nowLeft = Clip.range.maxLeft;
            }
            if(nowTop < Clip.range.minTop) {
                nowTop = Clip.range.minTop;
            }
            if(nowTop > Clip.range.maxTop) {
                nowTop = Clip.range.maxTop;
            }
            Clip.changeClipStyle(nowLeft, nowTop);
            Clip.touchX = x;
            Clip.touchY = y;
            Clip.timer = null;
        }, 20);
    });
    
    //按钮的事件
    $("#reduce").on('tap', function(){
        Clip.changeBase(-1);
    });
    
    $("#enlarge").on('tap', function(){
        Clip.changeBase(1);
    });
    
    $("#saveBtn").on('click', function(){
        if(clickCount == 0){
            clickCount ++;
            saveImage();
        }
        
    });
    
    $("#cancelBtn").on('click', function(){
        $("#clipPanel").addClass("c-hide");
        clearFile();
        $("#content").removeClass("c-hide");
    });
};
var clearFile = function(){
    var str ='<input type="file" class="c-hide" id="file_head" accept="image/*;capture=camera" onchange="clip_photo()">';
    $("#file_head").remove();
    $("#chooseImage").append(str);
}
var saveImage = function(){
    var width = Clip.size,
        height = Clip.size,
        x = Clip.leftCss - Clip.range.minLeft,
        y = Clip.topCss - Clip.range.minTop;
        
    var canvas2=$('<canvas width="'+width+'" height="'+height+'"></canvas>')[0],
        ctx=canvas2.getContext('2d');
        
    var image = new Image();
    image.src = Clip.imgUrl;
    image.onload = function(){
        var widthPix = imgWidth/image.width,
            heightPix = imgHeight / image.height;
        ctx.drawImage(image,x/widthPix,y/heightPix,width/widthPix,height/heightPix,0,0,width,height);
        
        var data=canvas2.toDataURL();
        data=data.split(',')[1];
        data=window.atob(data);
        var ia = new Uint8Array(data.length);
        for (var i = 0; i < data.length; i++) {
            ia[i] = data.charCodeAt(i);
        }
        var blob=new Blob([ia],{type:"image/png",endings:'transparent'});
        var fd=new FormData();
        fd.append('file',blob,'image.png');
        
        var new_url = URL.createObjectURL(blob);
        appendFile(new_url);
        $.ajax(server + 'upload/image', {
            data: fd,
            dataType: 'json',
            contentType: false,
            cache: false,
            processData: false,
            beforeSend: function(request) {
                request.setRequestHeader("userAgent", userAgent);
            },
            type: 'post',
            error: function(res) {
                if(res.status == 999 || res.status == 998 || res.status == 997){
                    loginUrl(res.status);
                    return;
                }
                clickCount = 0;
            },
            success: function(res) {
                if(res.status == 999 || res.status == 998 || res.status == 997){
                    loginUrl(res.status);
                    return;
                }
                var params = {};
                params.photo = res.urls;
                var patientUrl = res.urls;
                sendPost('patient/save', params, 'json', 'post', submitFailed, submitSuccess);
                clickCount = 0;
                clearFile();
            }
        });
    };
};

+ 123 - 0
html/grzx/js/del-my-equipments.js

@ -0,0 +1,123 @@
//mui.plusReady(function() {
	queryList();
//});
function queryList() {
//	plus.nativeUI.showWaiting();
	//拼请求内容
	var params = {};
	params.id = 0;
	params.pagesize = 60;
	//发送ajax请求
	sendPost("patient/device/list", params, "json", "post", queryListFailed, queryListSuccesss);
}
function queryListFailed(res) {
	console.log(res.status); 
	if (res && res.msg) {
//		plus.nativeUI.toast(res.msg);
	} else {
//		plus.nativeUI.toast("数据加载失败");
	}
//	plus.nativeUI.closeWaiting();
}
function queryListSuccesss(res) {
	if (res.status == 200) {
		//成功 
//		console.log(res.data.list); 
		showList(res.data.list);
	} else {
		//非200则为失败
		queryListFailed(res);
	}
//	plus.nativeUI.closeWaiting();
}
/**
 * 清空tbody
 */
function clearHTML() {
	$("#equ_list").html("");
}
/**
 * 显示查询结果
 * @param {Object} list
 */
function showList(list) {
	clearHTML();
	var _html = "";
	for (var i = 0; i < list.length; i++) {
		var data = list[i];
		if (!data) {
			continue; 
		}
		
		_html+="<li class='c-list-text c-list-link'>"
        _html+=   "<div class='c-list-key'>"
        _html+=        "<i class='icon-del mr5' attr_code="+data.code+"></i>"
        _html+=        "<span>"+data.name+"</span>"
        _html+=    "</div>"
        _html+=   "<div class='c-list-info c-t-right'>"+data.sn+"</div>"
        _html+=   "<span class='list-icon arrow-right'></span>"
        _html+="</li>";
		
		
		
		
//		"<li class='c-list-text c-list-link' attr_code="+data.code+" attr_name="+data.name+" attr_sn="+data.sn+">"
//	    _html+="<div class='c-list-key'>"+data.name+"</div>"
//	    _html+="<div class='c-list-info c-t-right'>"+data.sn+"</div>"
//	    _html+="<span class='list-icon arrow-right'></span>"
//	    _html+="</li>";
		
	}
	$("#equ_list").html(_html); 
	
	$(".icon-del").on("click",function(){
	        var i = $(this);
	        var attr_code = $(this).attr('attr_code');
	        dialog({
	            title:'删除设备信息',
	            content:'确定删除该设备信息吗?',
	            ok: function (){
	
					//获取现在有的设备类别以及名称
			        var params = {}
			        params.code = attr_code;		        		        
					//发送ajax请求, 查询设备列表信息
					sendPost("patient/device/delete", params, "json", "post", queryListFailed,dele_Successs);
					function dele_Successs(res){
						
						console.log("删除成功");
						var i = plus.webview.getWebviewById("my-equipments");
//						mui.fire(i, "update_info_detail", {
//								type_name:params.type_name,
//								name:params.name,
//								sn:params.sn,
//						});
//						mui.toast("删除成功");
						alert("删除成功");
						
						
						
					}
//					plus.nativeUI.toast(res.mag);
					i.parent().parent().remove();
					
										
	            },
	            cancel: function () {
	//              alert("你点了取消")
					return;
	            }
	    	}).showModal();
	})
	
}
//添加数据添加监听
window.addEventListener("update_info_detail", function(e) {
	//刷新列表
	queryList();
	
});

+ 2038 - 0
html/grzx/js/iscroll-probe.js

@ -0,0 +1,2038 @@
/*! iScroll v5.1.3 ~ (c) 2008-2014 Matteo Spinelli ~ http://cubiq.org/license */
(function (window, document, Math) {
var rAF = window.requestAnimationFrame	||
	window.webkitRequestAnimationFrame	||
	window.mozRequestAnimationFrame		||
	window.oRequestAnimationFrame		||
	window.msRequestAnimationFrame		||
	function (callback) { window.setTimeout(callback, 1000 / 60); };
var utils = (function () {
	var me = {};
	var _elementStyle = document.createElement('div').style;
	var _vendor = (function () {
		var vendors = ['t', 'webkitT', 'MozT', 'msT', 'OT'],
			transform,
			i = 0,
			l = vendors.length;
		for ( ; i < l; i++ ) {
			transform = vendors[i] + 'ransform';
			if ( transform in _elementStyle ) return vendors[i].substr(0, vendors[i].length-1);
		}
		return false;
	})();
	function _prefixStyle (style) {
		if ( _vendor === false ) return false;
		if ( _vendor === '' ) return style;
		return _vendor + style.charAt(0).toUpperCase() + style.substr(1);
	}
	me.getTime = Date.now || function getTime () { return new Date().getTime(); };
	me.extend = function (target, obj) {
		for ( var i in obj ) {
			target[i] = obj[i];
		}
	};
	me.addEvent = function (el, type, fn, capture) {
		el.addEventListener(type, fn, !!capture);
	};
	me.removeEvent = function (el, type, fn, capture) {
		el.removeEventListener(type, fn, !!capture);
	};
	me.prefixPointerEvent = function (pointerEvent) {
		return window.MSPointerEvent ? 
			'MSPointer' + pointerEvent.charAt(9).toUpperCase() + pointerEvent.substr(10):
			pointerEvent;
	};
	me.momentum = function (current, start, time, lowerMargin, wrapperSize, deceleration) {
		var distance = current - start,
			speed = Math.abs(distance) / time,
			destination,
			duration;
		deceleration = deceleration === undefined ? 0.0006 : deceleration;
		destination = current + ( speed * speed ) / ( 2 * deceleration ) * ( distance < 0 ? -1 : 1 );
		duration = speed / deceleration;
		if ( destination < lowerMargin ) {
			destination = wrapperSize ? lowerMargin - ( wrapperSize / 2.5 * ( speed / 8 ) ) : lowerMargin;
			distance = Math.abs(destination - current);
			duration = distance / speed;
		} else if ( destination > 0 ) {
			destination = wrapperSize ? wrapperSize / 2.5 * ( speed / 8 ) : 0;
			distance = Math.abs(current) + destination;
			duration = distance / speed;
		}
		return {
			destination: Math.round(destination),
			duration: duration
		};
	};
	var _transform = _prefixStyle('transform');
	me.extend(me, {
		hasTransform: _transform !== false,
		hasPerspective: _prefixStyle('perspective') in _elementStyle,
		hasTouch: 'ontouchstart' in window,
		hasPointer: window.PointerEvent || window.MSPointerEvent, // IE10 is prefixed
		hasTransition: _prefixStyle('transition') in _elementStyle
	});
	// This should find all Android browsers lower than build 535.19 (both stock browser and webview)
	me.isBadAndroid = /Android /.test(window.navigator.appVersion) && !(/Chrome\/\d/.test(window.navigator.appVersion));
	me.extend(me.style = {}, {
		transform: _transform,
		transitionTimingFunction: _prefixStyle('transitionTimingFunction'),
		transitionDuration: _prefixStyle('transitionDuration'),
		transitionDelay: _prefixStyle('transitionDelay'),
		transformOrigin: _prefixStyle('transformOrigin')
	});
	me.hasClass = function (e, c) {
		var re = new RegExp("(^|\\s)" + c + "(\\s|$)");
		return re.test(e.className);
	};
	me.addClass = function (e, c) {
		if ( me.hasClass(e, c) ) {
			return;
		}
		var newclass = e.className.split(' ');
		newclass.push(c);
		e.className = newclass.join(' ');
	};
	me.removeClass = function (e, c) {
		if ( !me.hasClass(e, c) ) {
			return;
		}
		var re = new RegExp("(^|\\s)" + c + "(\\s|$)", 'g');
		e.className = e.className.replace(re, ' ');
	};
	me.offset = function (el) {
		var left = -el.offsetLeft,
			top = -el.offsetTop;
		// jshint -W084
		while (el = el.offsetParent) {
			left -= el.offsetLeft;
			top -= el.offsetTop;
		}
		// jshint +W084
		return {
			left: left,
			top: top
		};
	};
	me.preventDefaultException = function (el, exceptions) {
		for ( var i in exceptions ) {
			if ( exceptions[i].test(el[i]) ) {
				return true;
			}
		}
		return false;
	};
	me.extend(me.eventType = {}, {
		touchstart: 1,
		touchmove: 1,
		touchend: 1,
		mousedown: 2,
		mousemove: 2,
		mouseup: 2,
		pointerdown: 3,
		pointermove: 3,
		pointerup: 3,
		MSPointerDown: 3,
		MSPointerMove: 3,
		MSPointerUp: 3
	});
	me.extend(me.ease = {}, {
		quadratic: {
			style: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',
			fn: function (k) {
				return k * ( 2 - k );
			}
		},
		circular: {
			style: 'cubic-bezier(0.1, 0.57, 0.1, 1)',	// Not properly "circular" but this looks better, it should be (0.075, 0.82, 0.165, 1)
			fn: function (k) {
				return Math.sqrt( 1 - ( --k * k ) );
			}
		},
		back: {
			style: 'cubic-bezier(0.175, 0.885, 0.32, 1.275)',
			fn: function (k) {
				var b = 4;
				return ( k = k - 1 ) * k * ( ( b + 1 ) * k + b ) + 1;
			}
		},
		bounce: {
			style: '',
			fn: function (k) {
				if ( ( k /= 1 ) < ( 1 / 2.75 ) ) {
					return 7.5625 * k * k;
				} else if ( k < ( 2 / 2.75 ) ) {
					return 7.5625 * ( k -= ( 1.5 / 2.75 ) ) * k + 0.75;
				} else if ( k < ( 2.5 / 2.75 ) ) {
					return 7.5625 * ( k -= ( 2.25 / 2.75 ) ) * k + 0.9375;
				} else {
					return 7.5625 * ( k -= ( 2.625 / 2.75 ) ) * k + 0.984375;
				}
			}
		},
		elastic: {
			style: '',
			fn: function (k) {
				var f = 0.22,
					e = 0.4;
				if ( k === 0 ) { return 0; }
				if ( k == 1 ) { return 1; }
				return ( e * Math.pow( 2, - 10 * k ) * Math.sin( ( k - f / 4 ) * ( 2 * Math.PI ) / f ) + 1 );
			}
		}
	});
	me.tap = function (e, eventName) {
		var ev = document.createEvent('Event');
		ev.initEvent(eventName, true, true);
		ev.pageX = e.pageX;
		ev.pageY = e.pageY;
		e.target.dispatchEvent(ev);
	};
	me.click = function (e) {
		var target = e.target,
			ev;
		if ( !(/(SELECT|INPUT|TEXTAREA)/i).test(target.tagName) ) {
			ev = document.createEvent('MouseEvents');
			ev.initMouseEvent('click', true, true, e.view, 1,
				target.screenX, target.screenY, target.clientX, target.clientY,
				e.ctrlKey, e.altKey, e.shiftKey, e.metaKey,
				0, null);
			ev._constructed = true;
			target.dispatchEvent(ev);
		}
	};
	return me;
})();
function IScroll (el, options) {
	this.wrapper = typeof el == 'string' ? document.querySelector(el) : el;
	this.scroller = this.wrapper.children[0];
	this.scrollerStyle = this.scroller.style;		// cache style for better performance
	this.options = {
		resizeScrollbars: true,
		mouseWheelSpeed: 20,
		snapThreshold: 0.334,
// INSERT POINT: OPTIONS 
		startX: 0,
		startY: 0,
		scrollY: true,
		directionLockThreshold: 5,
		momentum: true,
		bounce: true,
		bounceTime: 600,
		bounceEasing: '',
		preventDefault: true,
		preventDefaultException: { tagName: /^(INPUT|TEXTAREA|BUTTON|SELECT)$/ },
		HWCompositing: true,
		useTransition: true,
		useTransform: true
	};
	for ( var i in options ) {
		this.options[i] = options[i];
	}
	// Normalize options
	this.translateZ = this.options.HWCompositing && utils.hasPerspective ? ' translateZ(0)' : '';
	this.options.useTransition = utils.hasTransition && this.options.useTransition;
	this.options.useTransform = utils.hasTransform && this.options.useTransform;
	this.options.eventPassthrough = this.options.eventPassthrough === true ? 'vertical' : this.options.eventPassthrough;
	this.options.preventDefault = !this.options.eventPassthrough && this.options.preventDefault;
	// If you want eventPassthrough I have to lock one of the axes
	this.options.scrollY = this.options.eventPassthrough == 'vertical' ? false : this.options.scrollY;
	this.options.scrollX = this.options.eventPassthrough == 'horizontal' ? false : this.options.scrollX;
	// With eventPassthrough we also need lockDirection mechanism
	this.options.freeScroll = this.options.freeScroll && !this.options.eventPassthrough;
	this.options.directionLockThreshold = this.options.eventPassthrough ? 0 : this.options.directionLockThreshold;
	this.options.bounceEasing = typeof this.options.bounceEasing == 'string' ? utils.ease[this.options.bounceEasing] || utils.ease.circular : this.options.bounceEasing;
	this.options.resizePolling = this.options.resizePolling === undefined ? 60 : this.options.resizePolling;
	if ( this.options.tap === true ) {
		this.options.tap = 'tap';
	}
	if ( this.options.shrinkScrollbars == 'scale' ) {
		this.options.useTransition = false;
	}
	this.options.invertWheelDirection = this.options.invertWheelDirection ? -1 : 1;
	if ( this.options.probeType == 3 ) {
		this.options.useTransition = false;	}
// INSERT POINT: NORMALIZATION
	// Some defaults	
	this.x = 0;
	this.y = 0;
	this.directionX = 0;
	this.directionY = 0;
	this._events = {};
// INSERT POINT: DEFAULTS
	this._init();
	this.refresh();
	this.scrollTo(this.options.startX, this.options.startY);
	this.enable();
}
IScroll.prototype = {
	version: '5.1.3',
	_init: function () {
		this._initEvents();
		if ( this.options.scrollbars || this.options.indicators ) {
			this._initIndicators();
		}
		if ( this.options.mouseWheel ) {
			this._initWheel();
		}
		if ( this.options.snap ) {
			this._initSnap();
		}
		if ( this.options.keyBindings ) {
			this._initKeys();
		}
// INSERT POINT: _init
	},
	destroy: function () {
		this._initEvents(true);
		this._execEvent('destroy');
	},
	_transitionEnd: function (e) {
		if ( e.target != this.scroller || !this.isInTransition ) {
			return;
		}
		this._transitionTime();
		if ( !this.resetPosition(this.options.bounceTime) ) {
			this.isInTransition = false;
			this._execEvent('scrollEnd');
		}
	},
	_start: function (e) {
		// React to left mouse button only
		if ( utils.eventType[e.type] != 1 ) {
			if ( e.button !== 0 ) {
				return;
			}
		}
		if ( !this.enabled || (this.initiated && utils.eventType[e.type] !== this.initiated) ) {
			return;
		}
		if ( this.options.preventDefault && !utils.isBadAndroid && !utils.preventDefaultException(e.target, this.options.preventDefaultException) ) {
			e.preventDefault();
		}
		var point = e.touches ? e.touches[0] : e,
			pos;
		this.initiated	= utils.eventType[e.type];
		this.moved		= false;
		this.distX		= 0;
		this.distY		= 0;
		this.directionX = 0;
		this.directionY = 0;
		this.directionLocked = 0;
		this._transitionTime();
		this.startTime = utils.getTime();
		if ( this.options.useTransition && this.isInTransition ) {
			this.isInTransition = false;
			pos = this.getComputedPosition();
			this._translate(Math.round(pos.x), Math.round(pos.y));
			this._execEvent('scrollEnd');
		} else if ( !this.options.useTransition && this.isAnimating ) {
			this.isAnimating = false;
			this._execEvent('scrollEnd');
		}
		this.startX    = this.x;
		this.startY    = this.y;
		this.absStartX = this.x;
		this.absStartY = this.y;
		this.pointX    = point.pageX;
		this.pointY    = point.pageY;
		this._execEvent('beforeScrollStart');
	},
	_move: function (e) {
		if ( !this.enabled || utils.eventType[e.type] !== this.initiated ) {
			return;
		}
		if ( this.options.preventDefault ) {	// increases performance on Android? TODO: check!
			e.preventDefault();
		}
		var point		= e.touches ? e.touches[0] : e,
			deltaX		= point.pageX - this.pointX,
			deltaY		= point.pageY - this.pointY,
			timestamp	= utils.getTime(),
			newX, newY,
			absDistX, absDistY;
		this.pointX		= point.pageX;
		this.pointY		= point.pageY;
		this.distX		+= deltaX;
		this.distY		+= deltaY;
		absDistX		= Math.abs(this.distX);
		absDistY		= Math.abs(this.distY);
		// We need to move at least 10 pixels for the scrolling to initiate
		if ( timestamp - this.endTime > 300 && (absDistX < 10 && absDistY < 10) ) {
			return;
		}
		// If you are scrolling in one direction lock the other
		if ( !this.directionLocked && !this.options.freeScroll ) {
			if ( absDistX > absDistY + this.options.directionLockThreshold ) {
				this.directionLocked = 'h';		// lock horizontally
			} else if ( absDistY >= absDistX + this.options.directionLockThreshold ) {
				this.directionLocked = 'v';		// lock vertically
			} else {
				this.directionLocked = 'n';		// no lock
			}
		}
		if ( this.directionLocked == 'h' ) {
			if ( this.options.eventPassthrough == 'vertical' ) {
				e.preventDefault();
			} else if ( this.options.eventPassthrough == 'horizontal' ) {
				this.initiated = false;
				return;
			}
			deltaY = 0;
		} else if ( this.directionLocked == 'v' ) {
			if ( this.options.eventPassthrough == 'horizontal' ) {
				e.preventDefault();
			} else if ( this.options.eventPassthrough == 'vertical' ) {
				this.initiated = false;
				return;
			}
			deltaX = 0;
		}
		deltaX = this.hasHorizontalScroll ? deltaX : 0;
		deltaY = this.hasVerticalScroll ? deltaY : 0;
		newX = this.x + deltaX;
		newY = this.y + deltaY;
		// Slow down if outside of the boundaries
		if ( newX > 0 || newX < this.maxScrollX ) {
			newX = this.options.bounce ? this.x + deltaX / 3 : newX > 0 ? 0 : this.maxScrollX;
		}
		if ( newY > 0 || newY < this.maxScrollY ) {
			newY = this.options.bounce ? this.y + deltaY / 3 : newY > 0 ? 0 : this.maxScrollY;
		}
		this.directionX = deltaX > 0 ? -1 : deltaX < 0 ? 1 : 0;
		this.directionY = deltaY > 0 ? -1 : deltaY < 0 ? 1 : 0;
		if ( !this.moved ) {
			this._execEvent('scrollStart');
		}
		this.moved = true;
		this._translate(newX, newY);
/* REPLACE START: _move */
		if ( timestamp - this.startTime > 300 ) {
			this.startTime = timestamp;
			this.startX = this.x;
			this.startY = this.y;
			if ( this.options.probeType == 1 ) {
				this._execEvent('scroll');
			}
		}
		if ( this.options.probeType > 1 ) {
			this._execEvent('scroll');
		}
/* REPLACE END: _move */
	},
	_end: function (e) {
		if ( !this.enabled || utils.eventType[e.type] !== this.initiated ) {
			return;
		}
		if ( this.options.preventDefault && !utils.preventDefaultException(e.target, this.options.preventDefaultException) ) {
			e.preventDefault();
		}
		var point = e.changedTouches ? e.changedTouches[0] : e,
			momentumX,
			momentumY,
			duration = utils.getTime() - this.startTime,
			newX = Math.round(this.x),
			newY = Math.round(this.y),
			distanceX = Math.abs(newX - this.startX),
			distanceY = Math.abs(newY - this.startY),
			time = 0,
			easing = '';
		this.isInTransition = 0;
		this.initiated = 0;
		this.endTime = utils.getTime();
		// reset if we are outside of the boundaries
		if ( this.resetPosition(this.options.bounceTime) ) {
			return;
		}
		this.scrollTo(newX, newY);	// ensures that the last position is rounded
		// we scrolled less than 10 pixels
		if ( !this.moved ) {
			if ( this.options.tap ) {
				utils.tap(e, this.options.tap);
			}
			if ( this.options.click ) {
				utils.click(e);
			}
			this._execEvent('scrollCancel');
			return;
		}
		if ( this._events.flick && duration < 200 && distanceX < 100 && distanceY < 100 ) {
			this._execEvent('flick');
			return;
		}
		// start momentum animation if needed
		if ( this.options.momentum && duration < 300 ) {
			momentumX = this.hasHorizontalScroll ? utils.momentum(this.x, this.startX, duration, this.maxScrollX, this.options.bounce ? this.wrapperWidth : 0, this.options.deceleration) : { destination: newX, duration: 0 };
			momentumY = this.hasVerticalScroll ? utils.momentum(this.y, this.startY, duration, this.maxScrollY, this.options.bounce ? this.wrapperHeight : 0, this.options.deceleration) : { destination: newY, duration: 0 };
			newX = momentumX.destination;
			newY = momentumY.destination;
			time = Math.max(momentumX.duration, momentumY.duration);
			this.isInTransition = 1;
		}
		if ( this.options.snap ) {
			var snap = this._nearestSnap(newX, newY);
			this.currentPage = snap;
			time = this.options.snapSpeed || Math.max(
					Math.max(
						Math.min(Math.abs(newX - snap.x), 1000),
						Math.min(Math.abs(newY - snap.y), 1000)
					), 300);
			newX = snap.x;
			newY = snap.y;
			this.directionX = 0;
			this.directionY = 0;
			easing = this.options.bounceEasing;
		}
// INSERT POINT: _end
		if ( newX != this.x || newY != this.y ) {
			// change easing function when scroller goes out of the boundaries
			if ( newX > 0 || newX < this.maxScrollX || newY > 0 || newY < this.maxScrollY ) {
				easing = utils.ease.quadratic;
			}
			this.scrollTo(newX, newY, time, easing);
			return;
		}
		this._execEvent('scrollEnd');
	},
	_resize: function () {
		var that = this;
		clearTimeout(this.resizeTimeout);
		this.resizeTimeout = setTimeout(function () {
			that.refresh();
		}, this.options.resizePolling);
	},
	resetPosition: function (time) {
		var x = this.x,
			y = this.y;
		time = time || 0;
		if ( !this.hasHorizontalScroll || this.x > 0 ) {
			x = 0;
		} else if ( this.x < this.maxScrollX ) {
			x = this.maxScrollX;
		}
		if ( !this.hasVerticalScroll || this.y > 0 ) {
			y = 0;
		} else if ( this.y < this.maxScrollY ) {
			y = this.maxScrollY;
		}
		if ( x == this.x && y == this.y ) {
			return false;
		}
		this.scrollTo(x, y, time, this.options.bounceEasing);
		return true;
	},
	disable: function () {
		this.enabled = false;
	},
	enable: function () {
		this.enabled = true;
	},
	refresh: function () {
		var rf = this.wrapper.offsetHeight;		// Force reflow
		this.wrapperWidth	= this.wrapper.clientWidth;
		this.wrapperHeight	= this.wrapper.clientHeight;
/* REPLACE START: refresh */
		this.scrollerWidth	= this.scroller.offsetWidth;
		this.scrollerHeight	= this.scroller.offsetHeight;
		this.maxScrollX		= this.wrapperWidth - this.scrollerWidth;
		this.maxScrollY		= this.wrapperHeight - this.scrollerHeight;
/* REPLACE END: refresh */
		this.hasHorizontalScroll	= this.options.scrollX && this.maxScrollX < 0;
		this.hasVerticalScroll		= this.options.scrollY && this.maxScrollY < 0;
		if ( !this.hasHorizontalScroll ) {
			this.maxScrollX = 0;
			this.scrollerWidth = this.wrapperWidth;
		}
		if ( !this.hasVerticalScroll ) {
			this.maxScrollY = 0;
			this.scrollerHeight = this.wrapperHeight;
		}
		this.endTime = 0;
		this.directionX = 0;
		this.directionY = 0;
		this.wrapperOffset = utils.offset(this.wrapper);
		this._execEvent('refresh');
		this.resetPosition();
// INSERT POINT: _refresh
	},
	on: function (type, fn) {
		if ( !this._events[type] ) {
			this._events[type] = [];
		}
		this._events[type].push(fn);
	},
	off: function (type, fn) {
		if ( !this._events[type] ) {
			return;
		}
		var index = this._events[type].indexOf(fn);
		if ( index > -1 ) {
			this._events[type].splice(index, 1);
		}
	},
	_execEvent: function (type) {
		if ( !this._events[type] ) {
			return;
		}
		var i = 0,
			l = this._events[type].length;
		if ( !l ) {
			return;
		}
		for ( ; i < l; i++ ) {
			this._events[type][i].apply(this, [].slice.call(arguments, 1));
		}
	},
	scrollBy: function (x, y, time, easing) {
		x = this.x + x;
		y = this.y + y;
		time = time || 0;
		this.scrollTo(x, y, time, easing);
	},
	scrollTo: function (x, y, time, easing) {
		easing = easing || utils.ease.circular;
		this.isInTransition = this.options.useTransition && time > 0;
		if ( !time || (this.options.useTransition && easing.style) ) {
			this._transitionTimingFunction(easing.style);
			this._transitionTime(time);
			this._translate(x, y);
		} else {
			this._animate(x, y, time, easing.fn);
		}
	},
	scrollToElement: function (el, time, offsetX, offsetY, easing) {
		el = el.nodeType ? el : this.scroller.querySelector(el);
		if ( !el ) {
			return;
		}
		var pos = utils.offset(el);
		pos.left -= this.wrapperOffset.left;
		pos.top  -= this.wrapperOffset.top;
		// if offsetX/Y are true we center the element to the screen
		if ( offsetX === true ) {
			offsetX = Math.round(el.offsetWidth / 2 - this.wrapper.offsetWidth / 2);
		}
		if ( offsetY === true ) {
			offsetY = Math.round(el.offsetHeight / 2 - this.wrapper.offsetHeight / 2);
		}
		pos.left -= offsetX || 0;
		pos.top  -= offsetY || 0;
		pos.left = pos.left > 0 ? 0 : pos.left < this.maxScrollX ? this.maxScrollX : pos.left;
		pos.top  = pos.top  > 0 ? 0 : pos.top  < this.maxScrollY ? this.maxScrollY : pos.top;
		time = time === undefined || time === null || time === 'auto' ? Math.max(Math.abs(this.x-pos.left), Math.abs(this.y-pos.top)) : time;
		this.scrollTo(pos.left, pos.top, time, easing);
	},
	_transitionTime: function (time) {
		time = time || 0;
		this.scrollerStyle[utils.style.transitionDuration] = time + 'ms';
		if ( !time && utils.isBadAndroid ) {
			this.scrollerStyle[utils.style.transitionDuration] = '0.001s';
		}
		if ( this.indicators ) {
			for ( var i = this.indicators.length; i--; ) {
				this.indicators[i].transitionTime(time);
			}
		}
// INSERT POINT: _transitionTime
	},
	_transitionTimingFunction: function (easing) {
		this.scrollerStyle[utils.style.transitionTimingFunction] = easing;
		if ( this.indicators ) {
			for ( var i = this.indicators.length; i--; ) {
				this.indicators[i].transitionTimingFunction(easing);
			}
		}
// INSERT POINT: _transitionTimingFunction
	},
	_translate: function (x, y) {
		if ( this.options.useTransform ) {
/* REPLACE START: _translate */
			this.scrollerStyle[utils.style.transform] = 'translate(' + x + 'px,' + y + 'px)' + this.translateZ;
/* REPLACE END: _translate */
		} else {
			x = Math.round(x);
			y = Math.round(y);
			this.scrollerStyle.left = x + 'px';
			this.scrollerStyle.top = y + 'px';
		}
		this.x = x;
		this.y = y;
	if ( this.indicators ) {
		for ( var i = this.indicators.length; i--; ) {
			this.indicators[i].updatePosition();
		}
	}
// INSERT POINT: _translate
	},
	_initEvents: function (remove) {
		var eventType = remove ? utils.removeEvent : utils.addEvent,
			target = this.options.bindToWrapper ? this.wrapper : window;
		eventType(window, 'orientationchange', this);
		eventType(window, 'resize', this);
		if ( this.options.click ) {
			eventType(this.wrapper, 'click', this, true);
		}
		if ( !this.options.disableMouse ) {
			eventType(this.wrapper, 'mousedown', this);
			eventType(target, 'mousemove', this);
			eventType(target, 'mousecancel', this);
			eventType(target, 'mouseup', this);
		}
		if ( utils.hasPointer && !this.options.disablePointer ) {
			eventType(this.wrapper, utils.prefixPointerEvent('pointerdown'), this);
			eventType(target, utils.prefixPointerEvent('pointermove'), this);
			eventType(target, utils.prefixPointerEvent('pointercancel'), this);
			eventType(target, utils.prefixPointerEvent('pointerup'), this);
		}
		if ( utils.hasTouch && !this.options.disableTouch ) {
			eventType(this.wrapper, 'touchstart', this);
			eventType(target, 'touchmove', this);
			eventType(target, 'touchcancel', this);
			eventType(target, 'touchend', this);
		}
		eventType(this.scroller, 'transitionend', this);
		eventType(this.scroller, 'webkitTransitionEnd', this);
		eventType(this.scroller, 'oTransitionEnd', this);
		eventType(this.scroller, 'MSTransitionEnd', this);
	},
	getComputedPosition: function () {
		var matrix = window.getComputedStyle(this.scroller, null),
			x, y;
		if ( this.options.useTransform ) {
			matrix = matrix[utils.style.transform].split(')')[0].split(', ');
			x = +(matrix[12] || matrix[4]);
			y = +(matrix[13] || matrix[5]);
		} else {
			x = +matrix.left.replace(/[^-\d.]/g, '');
			y = +matrix.top.replace(/[^-\d.]/g, '');
		}
		return { x: x, y: y };
	},
	_initIndicators: function () {
		var interactive = this.options.interactiveScrollbars,
			customStyle = typeof this.options.scrollbars != 'string',
			indicators = [],
			indicator;
		var that = this;
		this.indicators = [];
		if ( this.options.scrollbars ) {
			// Vertical scrollbar
			if ( this.options.scrollY ) {
				indicator = {
					el: createDefaultScrollbar('v', interactive, this.options.scrollbars),
					interactive: interactive,
					defaultScrollbars: true,
					customStyle: customStyle,
					resize: this.options.resizeScrollbars,
					shrink: this.options.shrinkScrollbars,
					fade: this.options.fadeScrollbars,
					listenX: false
				};
				this.wrapper.appendChild(indicator.el);
				indicators.push(indicator);
			}
			// Horizontal scrollbar
			if ( this.options.scrollX ) {
				indicator = {
					el: createDefaultScrollbar('h', interactive, this.options.scrollbars),
					interactive: interactive,
					defaultScrollbars: true,
					customStyle: customStyle,
					resize: this.options.resizeScrollbars,
					shrink: this.options.shrinkScrollbars,
					fade: this.options.fadeScrollbars,
					listenY: false
				};
				this.wrapper.appendChild(indicator.el);
				indicators.push(indicator);
			}
		}
		if ( this.options.indicators ) {
			// TODO: check concat compatibility
			indicators = indicators.concat(this.options.indicators);
		}
		for ( var i = indicators.length; i--; ) {
			this.indicators.push( new Indicator(this, indicators[i]) );
		}
		// TODO: check if we can use array.map (wide compatibility and performance issues)
		function _indicatorsMap (fn) {
			for ( var i = that.indicators.length; i--; ) {
				fn.call(that.indicators[i]);
			}
		}
		if ( this.options.fadeScrollbars ) {
			this.on('scrollEnd', function () {
				_indicatorsMap(function () {
					this.fade();
				});
			});
			this.on('scrollCancel', function () {
				_indicatorsMap(function () {
					this.fade();
				});
			});
			this.on('scrollStart', function () {
				_indicatorsMap(function () {
					this.fade(1);
				});
			});
			this.on('beforeScrollStart', function () {
				_indicatorsMap(function () {
					this.fade(1, true);
				});
			});
		}
		this.on('refresh', function () {
			_indicatorsMap(function () {
				this.refresh();
			});
		});
		this.on('destroy', function () {
			_indicatorsMap(function () {
				this.destroy();
			});
			delete this.indicators;
		});
	},
	_initWheel: function () {
		utils.addEvent(this.wrapper, 'wheel', this);
		utils.addEvent(this.wrapper, 'mousewheel', this);
		utils.addEvent(this.wrapper, 'DOMMouseScroll', this);
		this.on('destroy', function () {
			utils.removeEvent(this.wrapper, 'wheel', this);
			utils.removeEvent(this.wrapper, 'mousewheel', this);
			utils.removeEvent(this.wrapper, 'DOMMouseScroll', this);
		});
	},
	_wheel: function (e) {
		if ( !this.enabled ) {
			return;
		}
		e.preventDefault();
		e.stopPropagation();
		var wheelDeltaX, wheelDeltaY,
			newX, newY,
			that = this;
		if ( this.wheelTimeout === undefined ) {
			that._execEvent('scrollStart');
		}
		// Execute the scrollEnd event after 400ms the wheel stopped scrolling
		clearTimeout(this.wheelTimeout);
		this.wheelTimeout = setTimeout(function () {
			that._execEvent('scrollEnd');
			that.wheelTimeout = undefined;
		}, 400);
		if ( 'deltaX' in e ) {
			if (e.deltaMode === 1) {
				wheelDeltaX = -e.deltaX * this.options.mouseWheelSpeed;
				wheelDeltaY = -e.deltaY * this.options.mouseWheelSpeed;
			} else {
				wheelDeltaX = -e.deltaX;
				wheelDeltaY = -e.deltaY;
			}
		} else if ( 'wheelDeltaX' in e ) {
			wheelDeltaX = e.wheelDeltaX / 120 * this.options.mouseWheelSpeed;
			wheelDeltaY = e.wheelDeltaY / 120 * this.options.mouseWheelSpeed;
		} else if ( 'wheelDelta' in e ) {
			wheelDeltaX = wheelDeltaY = e.wheelDelta / 120 * this.options.mouseWheelSpeed;
		} else if ( 'detail' in e ) {
			wheelDeltaX = wheelDeltaY = -e.detail / 3 * this.options.mouseWheelSpeed;
		} else {
			return;
		}
		wheelDeltaX *= this.options.invertWheelDirection;
		wheelDeltaY *= this.options.invertWheelDirection;
		if ( !this.hasVerticalScroll ) {
			wheelDeltaX = wheelDeltaY;
			wheelDeltaY = 0;
		}
		if ( this.options.snap ) {
			newX = this.currentPage.pageX;
			newY = this.currentPage.pageY;
			if ( wheelDeltaX > 0 ) {
				newX--;
			} else if ( wheelDeltaX < 0 ) {
				newX++;
			}
			if ( wheelDeltaY > 0 ) {
				newY--;
			} else if ( wheelDeltaY < 0 ) {
				newY++;
			}
			this.goToPage(newX, newY);
			return;
		}
		newX = this.x + Math.round(this.hasHorizontalScroll ? wheelDeltaX : 0);
		newY = this.y + Math.round(this.hasVerticalScroll ? wheelDeltaY : 0);
		if ( newX > 0 ) {
			newX = 0;
		} else if ( newX < this.maxScrollX ) {
			newX = this.maxScrollX;
		}
		if ( newY > 0 ) {
			newY = 0;
		} else if ( newY < this.maxScrollY ) {
			newY = this.maxScrollY;
		}
		this.scrollTo(newX, newY, 0);
		if ( this.options.probeType > 1 ) {
			this._execEvent('scroll');
		}
// INSERT POINT: _wheel
	},
	_initSnap: function () {
		this.currentPage = {};
		if ( typeof this.options.snap == 'string' ) {
			this.options.snap = this.scroller.querySelectorAll(this.options.snap);
		}
		this.on('refresh', function () {
			var i = 0, l,
				m = 0, n,
				cx, cy,
				x = 0, y,
				stepX = this.options.snapStepX || this.wrapperWidth,
				stepY = this.options.snapStepY || this.wrapperHeight,
				el;
			this.pages = [];
			if ( !this.wrapperWidth || !this.wrapperHeight || !this.scrollerWidth || !this.scrollerHeight ) {
				return;
			}
			if ( this.options.snap === true ) {
				cx = Math.round( stepX / 2 );
				cy = Math.round( stepY / 2 );
				while ( x > -this.scrollerWidth ) {
					this.pages[i] = [];
					l = 0;
					y = 0;
					while ( y > -this.scrollerHeight ) {
						this.pages[i][l] = {
							x: Math.max(x, this.maxScrollX),
							y: Math.max(y, this.maxScrollY),
							width: stepX,
							height: stepY,
							cx: x - cx,
							cy: y - cy
						};
						y -= stepY;
						l++;
					}
					x -= stepX;
					i++;
				}
			} else {
				el = this.options.snap;
				l = el.length;
				n = -1;
				for ( ; i < l; i++ ) {
					if ( i === 0 || el[i].offsetLeft <= el[i-1].offsetLeft ) {
						m = 0;
						n++;
					}
					if ( !this.pages[m] ) {
						this.pages[m] = [];
					}
					x = Math.max(-el[i].offsetLeft, this.maxScrollX);
					y = Math.max(-el[i].offsetTop, this.maxScrollY);
					cx = x - Math.round(el[i].offsetWidth / 2);
					cy = y - Math.round(el[i].offsetHeight / 2);
					this.pages[m][n] = {
						x: x,
						y: y,
						width: el[i].offsetWidth,
						height: el[i].offsetHeight,
						cx: cx,
						cy: cy
					};
					if ( x > this.maxScrollX ) {
						m++;
					}
				}
			}
			this.goToPage(this.currentPage.pageX || 0, this.currentPage.pageY || 0, 0);
			// Update snap threshold if needed
			if ( this.options.snapThreshold % 1 === 0 ) {
				this.snapThresholdX = this.options.snapThreshold;
				this.snapThresholdY = this.options.snapThreshold;
			} else {
				this.snapThresholdX = Math.round(this.pages[this.currentPage.pageX][this.currentPage.pageY].width * this.options.snapThreshold);
				this.snapThresholdY = Math.round(this.pages[this.currentPage.pageX][this.currentPage.pageY].height * this.options.snapThreshold);
			}
		});
		this.on('flick', function () {
			var time = this.options.snapSpeed || Math.max(
					Math.max(
						Math.min(Math.abs(this.x - this.startX), 1000),
						Math.min(Math.abs(this.y - this.startY), 1000)
					), 300);
			this.goToPage(
				this.currentPage.pageX + this.directionX,
				this.currentPage.pageY + this.directionY,
				time
			);
		});
	},
	_nearestSnap: function (x, y) {
		if ( !this.pages.length ) {
			return { x: 0, y: 0, pageX: 0, pageY: 0 };
		}
		var i = 0,
			l = this.pages.length,
			m = 0;
		// Check if we exceeded the snap threshold
		if ( Math.abs(x - this.absStartX) < this.snapThresholdX &&
			Math.abs(y - this.absStartY) < this.snapThresholdY ) {
			return this.currentPage;
		}
		if ( x > 0 ) {
			x = 0;
		} else if ( x < this.maxScrollX ) {
			x = this.maxScrollX;
		}
		if ( y > 0 ) {
			y = 0;
		} else if ( y < this.maxScrollY ) {
			y = this.maxScrollY;
		}
		for ( ; i < l; i++ ) {
			if ( x >= this.pages[i][0].cx ) {
				x = this.pages[i][0].x;
				break;
			}
		}
		l = this.pages[i].length;
		for ( ; m < l; m++ ) {
			if ( y >= this.pages[0][m].cy ) {
				y = this.pages[0][m].y;
				break;
			}
		}
		if ( i == this.currentPage.pageX ) {
			i += this.directionX;
			if ( i < 0 ) {
				i = 0;
			} else if ( i >= this.pages.length ) {
				i = this.pages.length - 1;
			}
			x = this.pages[i][0].x;
		}
		if ( m == this.currentPage.pageY ) {
			m += this.directionY;
			if ( m < 0 ) {
				m = 0;
			} else if ( m >= this.pages[0].length ) {
				m = this.pages[0].length - 1;
			}
			y = this.pages[0][m].y;
		}
		return {
			x: x,
			y: y,
			pageX: i,
			pageY: m
		};
	},
	goToPage: function (x, y, time, easing) {
		easing = easing || this.options.bounceEasing;
		if ( x >= this.pages.length ) {
			x = this.pages.length - 1;
		} else if ( x < 0 ) {
			x = 0;
		}
		if ( y >= this.pages[x].length ) {
			y = this.pages[x].length - 1;
		} else if ( y < 0 ) {
			y = 0;
		}
		var posX = this.pages[x][y].x,
			posY = this.pages[x][y].y;
		time = time === undefined ? this.options.snapSpeed || Math.max(
			Math.max(
				Math.min(Math.abs(posX - this.x), 1000),
				Math.min(Math.abs(posY - this.y), 1000)
			), 300) : time;
		this.currentPage = {
			x: posX,
			y: posY,
			pageX: x,
			pageY: y
		};
		this.scrollTo(posX, posY, time, easing);
	},
	next: function (time, easing) {
		var x = this.currentPage.pageX,
			y = this.currentPage.pageY;
		x++;
		if ( x >= this.pages.length && this.hasVerticalScroll ) {
			x = 0;
			y++;
		}
		this.goToPage(x, y, time, easing);
	},
	prev: function (time, easing) {
		var x = this.currentPage.pageX,
			y = this.currentPage.pageY;
		x--;
		if ( x < 0 && this.hasVerticalScroll ) {
			x = 0;
			y--;
		}
		this.goToPage(x, y, time, easing);
	},
	_initKeys: function (e) {
		// default key bindings
		var keys = {
			pageUp: 33,
			pageDown: 34,
			end: 35,
			home: 36,
			left: 37,
			up: 38,
			right: 39,
			down: 40
		};
		var i;
		// if you give me characters I give you keycode
		if ( typeof this.options.keyBindings == 'object' ) {
			for ( i in this.options.keyBindings ) {
				if ( typeof this.options.keyBindings[i] == 'string' ) {
					this.options.keyBindings[i] = this.options.keyBindings[i].toUpperCase().charCodeAt(0);
				}
			}
		} else {
			this.options.keyBindings = {};
		}
		for ( i in keys ) {
			this.options.keyBindings[i] = this.options.keyBindings[i] || keys[i];
		}
		utils.addEvent(window, 'keydown', this);
		this.on('destroy', function () {
			utils.removeEvent(window, 'keydown', this);
		});
	},
	_key: function (e) {
		if ( !this.enabled ) {
			return;
		}
		var snap = this.options.snap,	// we are using this alot, better to cache it
			newX = snap ? this.currentPage.pageX : this.x,
			newY = snap ? this.currentPage.pageY : this.y,
			now = utils.getTime(),
			prevTime = this.keyTime || 0,
			acceleration = 0.250,
			pos;
		if ( this.options.useTransition && this.isInTransition ) {
			pos = this.getComputedPosition();
			this._translate(Math.round(pos.x), Math.round(pos.y));
			this.isInTransition = false;
		}
		this.keyAcceleration = now - prevTime < 200 ? Math.min(this.keyAcceleration + acceleration, 50) : 0;
		switch ( e.keyCode ) {
			case this.options.keyBindings.pageUp:
				if ( this.hasHorizontalScroll && !this.hasVerticalScroll ) {
					newX += snap ? 1 : this.wrapperWidth;
				} else {
					newY += snap ? 1 : this.wrapperHeight;
				}
				break;
			case this.options.keyBindings.pageDown:
				if ( this.hasHorizontalScroll && !this.hasVerticalScroll ) {
					newX -= snap ? 1 : this.wrapperWidth;
				} else {
					newY -= snap ? 1 : this.wrapperHeight;
				}
				break;
			case this.options.keyBindings.end:
				newX = snap ? this.pages.length-1 : this.maxScrollX;
				newY = snap ? this.pages[0].length-1 : this.maxScrollY;
				break;
			case this.options.keyBindings.home:
				newX = 0;
				newY = 0;
				break;
			case this.options.keyBindings.left:
				newX += snap ? -1 : 5 + this.keyAcceleration>>0;
				break;
			case this.options.keyBindings.up:
				newY += snap ? 1 : 5 + this.keyAcceleration>>0;
				break;
			case this.options.keyBindings.right:
				newX -= snap ? -1 : 5 + this.keyAcceleration>>0;
				break;
			case this.options.keyBindings.down:
				newY -= snap ? 1 : 5 + this.keyAcceleration>>0;
				break;
			default:
				return;
		}
		if ( snap ) {
			this.goToPage(newX, newY);
			return;
		}
		if ( newX > 0 ) {
			newX = 0;
			this.keyAcceleration = 0;
		} else if ( newX < this.maxScrollX ) {
			newX = this.maxScrollX;
			this.keyAcceleration = 0;
		}
		if ( newY > 0 ) {
			newY = 0;
			this.keyAcceleration = 0;
		} else if ( newY < this.maxScrollY ) {
			newY = this.maxScrollY;
			this.keyAcceleration = 0;
		}
		this.scrollTo(newX, newY, 0);
		this.keyTime = now;
	},
	_animate: function (destX, destY, duration, easingFn) {
		var that = this,
			startX = this.x,
			startY = this.y,
			startTime = utils.getTime(),
			destTime = startTime + duration;
		function step () {
			var now = utils.getTime(),
				newX, newY,
				easing;
			if ( now >= destTime ) {
				that.isAnimating = false;
				that._translate(destX, destY);
				
				if ( !that.resetPosition(that.options.bounceTime) ) {
					that._execEvent('scrollEnd');
				}
				return;
			}
			now = ( now - startTime ) / duration;
			easing = easingFn(now);
			newX = ( destX - startX ) * easing + startX;
			newY = ( destY - startY ) * easing + startY;
			that._translate(newX, newY);
			if ( that.isAnimating ) {
				rAF(step);
			}
			if ( that.options.probeType == 3 ) {
				that._execEvent('scroll');
			}
		}
		this.isAnimating = true;
		step();
	},
	handleEvent: function (e) {
		switch ( e.type ) {
			case 'touchstart':
			case 'pointerdown':
			case 'MSPointerDown':
			case 'mousedown':
				this._start(e);
				break;
			case 'touchmove':
			case 'pointermove':
			case 'MSPointerMove':
			case 'mousemove':
				this._move(e);
				break;
			case 'touchend':
			case 'pointerup':
			case 'MSPointerUp':
			case 'mouseup':
			case 'touchcancel':
			case 'pointercancel':
			case 'MSPointerCancel':
			case 'mousecancel':
				this._end(e);
				break;
			case 'orientationchange':
			case 'resize':
				this._resize();
				break;
			case 'transitionend':
			case 'webkitTransitionEnd':
			case 'oTransitionEnd':
			case 'MSTransitionEnd':
				this._transitionEnd(e);
				break;
			case 'wheel':
			case 'DOMMouseScroll':
			case 'mousewheel':
				this._wheel(e);
				break;
			case 'keydown':
				this._key(e);
				break;
			case 'click':
				if ( !e._constructed ) {
					e.preventDefault();
					e.stopPropagation();
				}
				break;
		}
	}
};
function createDefaultScrollbar (direction, interactive, type) {
	var scrollbar = document.createElement('div'),
		indicator = document.createElement('div');
	if ( type === true ) {
		scrollbar.style.cssText = 'position:absolute;z-index:9999';
		indicator.style.cssText = '-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:absolute;background:rgba(0,0,0,0.5);border:1px solid rgba(255,255,255,0.9);border-radius:3px';
	}
	indicator.className = 'iScrollIndicator';
	if ( direction == 'h' ) {
		if ( type === true ) {
			scrollbar.style.cssText += ';height:7px;left:2px;right:2px;bottom:0';
			indicator.style.height = '100%';
		}
		scrollbar.className = 'iScrollHorizontalScrollbar';
	} else {
		if ( type === true ) {
			scrollbar.style.cssText += ';width:7px;bottom:2px;top:2px;right:1px';
			indicator.style.width = '100%';
		}
		scrollbar.className = 'iScrollVerticalScrollbar';
	}
	scrollbar.style.cssText += ';overflow:hidden';
	if ( !interactive ) {
		scrollbar.style.pointerEvents = 'none';
	}
	scrollbar.appendChild(indicator);
	return scrollbar;
}
function Indicator (scroller, options) {
	this.wrapper = typeof options.el == 'string' ? document.querySelector(options.el) : options.el;
	this.wrapperStyle = this.wrapper.style;
	this.indicator = this.wrapper.children[0];
	this.indicatorStyle = this.indicator.style;
	this.scroller = scroller;
	this.options = {
		listenX: true,
		listenY: true,
		interactive: false,
		resize: true,
		defaultScrollbars: false,
		shrink: false,
		fade: false,
		speedRatioX: 0,
		speedRatioY: 0
	};
	for ( var i in options ) {
		this.options[i] = options[i];
	}
	this.sizeRatioX = 1;
	this.sizeRatioY = 1;
	this.maxPosX = 0;
	this.maxPosY = 0;
	if ( this.options.interactive ) {
		if ( !this.options.disableTouch ) {
			utils.addEvent(this.indicator, 'touchstart', this);
			utils.addEvent(window, 'touchend', this);
		}
		if ( !this.options.disablePointer ) {
			utils.addEvent(this.indicator, utils.prefixPointerEvent('pointerdown'), this);
			utils.addEvent(window, utils.prefixPointerEvent('pointerup'), this);
		}
		if ( !this.options.disableMouse ) {
			utils.addEvent(this.indicator, 'mousedown', this);
			utils.addEvent(window, 'mouseup', this);
		}
	}
	if ( this.options.fade ) {
		this.wrapperStyle[utils.style.transform] = this.scroller.translateZ;
		this.wrapperStyle[utils.style.transitionDuration] = utils.isBadAndroid ? '0.001s' : '0ms';
		this.wrapperStyle.opacity = '0';
	}
}
Indicator.prototype = {
	handleEvent: function (e) {
		switch ( e.type ) {
			case 'touchstart':
			case 'pointerdown':
			case 'MSPointerDown':
			case 'mousedown':
				this._start(e);
				break;
			case 'touchmove':
			case 'pointermove':
			case 'MSPointerMove':
			case 'mousemove':
				this._move(e);
				break;
			case 'touchend':
			case 'pointerup':
			case 'MSPointerUp':
			case 'mouseup':
			case 'touchcancel':
			case 'pointercancel':
			case 'MSPointerCancel':
			case 'mousecancel':
				this._end(e);
				break;
		}
	},
	destroy: function () {
		if ( this.options.interactive ) {
			utils.removeEvent(this.indicator, 'touchstart', this);
			utils.removeEvent(this.indicator, utils.prefixPointerEvent('pointerdown'), this);
			utils.removeEvent(this.indicator, 'mousedown', this);
			utils.removeEvent(window, 'touchmove', this);
			utils.removeEvent(window, utils.prefixPointerEvent('pointermove'), this);
			utils.removeEvent(window, 'mousemove', this);
			utils.removeEvent(window, 'touchend', this);
			utils.removeEvent(window, utils.prefixPointerEvent('pointerup'), this);
			utils.removeEvent(window, 'mouseup', this);
		}
		if ( this.options.defaultScrollbars ) {
			this.wrapper.parentNode.removeChild(this.wrapper);
		}
	},
	_start: function (e) {
		var point = e.touches ? e.touches[0] : e;
		e.preventDefault();
		e.stopPropagation();
		this.transitionTime();
		this.initiated = true;
		this.moved = false;
		this.lastPointX	= point.pageX;
		this.lastPointY	= point.pageY;
		this.startTime	= utils.getTime();
		if ( !this.options.disableTouch ) {
			utils.addEvent(window, 'touchmove', this);
		}
		if ( !this.options.disablePointer ) {
			utils.addEvent(window, utils.prefixPointerEvent('pointermove'), this);
		}
		if ( !this.options.disableMouse ) {
			utils.addEvent(window, 'mousemove', this);
		}
		this.scroller._execEvent('beforeScrollStart');
	},
	_move: function (e) {
		var point = e.touches ? e.touches[0] : e,
			deltaX, deltaY,
			newX, newY,
			timestamp = utils.getTime();
		if ( !this.moved ) {
			this.scroller._execEvent('scrollStart');
		}
		this.moved = true;
		deltaX = point.pageX - this.lastPointX;
		this.lastPointX = point.pageX;
		deltaY = point.pageY - this.lastPointY;
		this.lastPointY = point.pageY;
		newX = this.x + deltaX;
		newY = this.y + deltaY;
		this._pos(newX, newY);
		if ( this.scroller.options.probeType == 1 && timestamp - this.startTime > 300 ) {
			this.startTime = timestamp;
			this.scroller._execEvent('scroll');
		} else if ( this.scroller.options.probeType > 1 ) {
			this.scroller._execEvent('scroll');
		}
// INSERT POINT: indicator._move
		e.preventDefault();
		e.stopPropagation();
	},
	_end: function (e) {
		if ( !this.initiated ) {
			return;
		}
		this.initiated = false;
		e.preventDefault();
		e.stopPropagation();
		utils.removeEvent(window, 'touchmove', this);
		utils.removeEvent(window, utils.prefixPointerEvent('pointermove'), this);
		utils.removeEvent(window, 'mousemove', this);
		if ( this.scroller.options.snap ) {
			var snap = this.scroller._nearestSnap(this.scroller.x, this.scroller.y);
			var time = this.options.snapSpeed || Math.max(
					Math.max(
						Math.min(Math.abs(this.scroller.x - snap.x), 1000),
						Math.min(Math.abs(this.scroller.y - snap.y), 1000)
					), 300);
			if ( this.scroller.x != snap.x || this.scroller.y != snap.y ) {
				this.scroller.directionX = 0;
				this.scroller.directionY = 0;
				this.scroller.currentPage = snap;
				this.scroller.scrollTo(snap.x, snap.y, time, this.scroller.options.bounceEasing);
			}
		}
		if ( this.moved ) {
			this.scroller._execEvent('scrollEnd');
		}
	},
	transitionTime: function (time) {
		time = time || 0;
		this.indicatorStyle[utils.style.transitionDuration] = time + 'ms';
		if ( !time && utils.isBadAndroid ) {
			this.indicatorStyle[utils.style.transitionDuration] = '0.001s';
		}
	},
	transitionTimingFunction: function (easing) {
		this.indicatorStyle[utils.style.transitionTimingFunction] = easing;
	},
	refresh: function () {
		this.transitionTime();
		if ( this.options.listenX && !this.options.listenY ) {
			this.indicatorStyle.display = this.scroller.hasHorizontalScroll ? 'block' : 'none';
		} else if ( this.options.listenY && !this.options.listenX ) {
			this.indicatorStyle.display = this.scroller.hasVerticalScroll ? 'block' : 'none';
		} else {
			this.indicatorStyle.display = this.scroller.hasHorizontalScroll || this.scroller.hasVerticalScroll ? 'block' : 'none';
		}
		if ( this.scroller.hasHorizontalScroll && this.scroller.hasVerticalScroll ) {
			utils.addClass(this.wrapper, 'iScrollBothScrollbars');
			utils.removeClass(this.wrapper, 'iScrollLoneScrollbar');
			if ( this.options.defaultScrollbars && this.options.customStyle ) {
				if ( this.options.listenX ) {
					this.wrapper.style.right = '8px';
				} else {
					this.wrapper.style.bottom = '8px';
				}
			}
		} else {
			utils.removeClass(this.wrapper, 'iScrollBothScrollbars');
			utils.addClass(this.wrapper, 'iScrollLoneScrollbar');
			if ( this.options.defaultScrollbars && this.options.customStyle ) {
				if ( this.options.listenX ) {
					this.wrapper.style.right = '2px';
				} else {
					this.wrapper.style.bottom = '2px';
				}
			}
		}
		var r = this.wrapper.offsetHeight;	// force refresh
		if ( this.options.listenX ) {
			this.wrapperWidth = this.wrapper.clientWidth;
			if ( this.options.resize ) {
				this.indicatorWidth = Math.max(Math.round(this.wrapperWidth * this.wrapperWidth / (this.scroller.scrollerWidth || this.wrapperWidth || 1)), 8);
				this.indicatorStyle.width = this.indicatorWidth + 'px';
			} else {
				this.indicatorWidth = this.indicator.clientWidth;
			}
			this.maxPosX = this.wrapperWidth - this.indicatorWidth;
			if ( this.options.shrink == 'clip' ) {
				this.minBoundaryX = -this.indicatorWidth + 8;
				this.maxBoundaryX = this.wrapperWidth - 8;
			} else {
				this.minBoundaryX = 0;
				this.maxBoundaryX = this.maxPosX;
			}
			this.sizeRatioX = this.options.speedRatioX || (this.scroller.maxScrollX && (this.maxPosX / this.scroller.maxScrollX));	
		}
		if ( this.options.listenY ) {
			this.wrapperHeight = this.wrapper.clientHeight;
			if ( this.options.resize ) {
				this.indicatorHeight = Math.max(Math.round(this.wrapperHeight * this.wrapperHeight / (this.scroller.scrollerHeight || this.wrapperHeight || 1)), 8);
				this.indicatorStyle.height = this.indicatorHeight + 'px';
			} else {
				this.indicatorHeight = this.indicator.clientHeight;
			}
			this.maxPosY = this.wrapperHeight - this.indicatorHeight;
			if ( this.options.shrink == 'clip' ) {
				this.minBoundaryY = -this.indicatorHeight + 8;
				this.maxBoundaryY = this.wrapperHeight - 8;
			} else {
				this.minBoundaryY = 0;
				this.maxBoundaryY = this.maxPosY;
			}
			this.maxPosY = this.wrapperHeight - this.indicatorHeight;
			this.sizeRatioY = this.options.speedRatioY || (this.scroller.maxScrollY && (this.maxPosY / this.scroller.maxScrollY));
		}
		this.updatePosition();
	},
	updatePosition: function () {
		var x = this.options.listenX && Math.round(this.sizeRatioX * this.scroller.x) || 0,
			y = this.options.listenY && Math.round(this.sizeRatioY * this.scroller.y) || 0;
		if ( !this.options.ignoreBoundaries ) {
			if ( x < this.minBoundaryX ) {
				if ( this.options.shrink == 'scale' ) {
					this.width = Math.max(this.indicatorWidth + x, 8);
					this.indicatorStyle.width = this.width + 'px';
				}
				x = this.minBoundaryX;
			} else if ( x > this.maxBoundaryX ) {
				if ( this.options.shrink == 'scale' ) {
					this.width = Math.max(this.indicatorWidth - (x - this.maxPosX), 8);
					this.indicatorStyle.width = this.width + 'px';
					x = this.maxPosX + this.indicatorWidth - this.width;
				} else {
					x = this.maxBoundaryX;
				}
			} else if ( this.options.shrink == 'scale' && this.width != this.indicatorWidth ) {
				this.width = this.indicatorWidth;
				this.indicatorStyle.width = this.width + 'px';
			}
			if ( y < this.minBoundaryY ) {
				if ( this.options.shrink == 'scale' ) {
					this.height = Math.max(this.indicatorHeight + y * 3, 8);
					this.indicatorStyle.height = this.height + 'px';
				}
				y = this.minBoundaryY;
			} else if ( y > this.maxBoundaryY ) {
				if ( this.options.shrink == 'scale' ) {
					this.height = Math.max(this.indicatorHeight - (y - this.maxPosY) * 3, 8);
					this.indicatorStyle.height = this.height + 'px';
					y = this.maxPosY + this.indicatorHeight - this.height;
				} else {
					y = this.maxBoundaryY;
				}
			} else if ( this.options.shrink == 'scale' && this.height != this.indicatorHeight ) {
				this.height = this.indicatorHeight;
				this.indicatorStyle.height = this.height + 'px';
			}
		}
		this.x = x;
		this.y = y;
		if ( this.scroller.options.useTransform ) {
			this.indicatorStyle[utils.style.transform] = 'translate(' + x + 'px,' + y + 'px)' + this.scroller.translateZ;
		} else {
			this.indicatorStyle.left = x + 'px';
			this.indicatorStyle.top = y + 'px';
		}
	},
	_pos: function (x, y) {
		if ( x < 0 ) {
			x = 0;
		} else if ( x > this.maxPosX ) {
			x = this.maxPosX;
		}
		if ( y < 0 ) {
			y = 0;
		} else if ( y > this.maxPosY ) {
			y = this.maxPosY;
		}
		x = this.options.listenX ? Math.round(x / this.sizeRatioX) : this.scroller.x;
		y = this.options.listenY ? Math.round(y / this.sizeRatioY) : this.scroller.y;
		this.scroller.scrollTo(x, y);
	},
	fade: function (val, hold) {
		if ( hold && !this.visible ) {
			return;
		}
		clearTimeout(this.fadeTimeout);
		this.fadeTimeout = null;
		var time = val ? 250 : 500,
			delay = val ? 0 : 300;
		val = val ? '1' : '0';
		this.wrapperStyle[utils.style.transitionDuration] = time + 'ms';
		this.fadeTimeout = setTimeout((function (val) {
			this.wrapperStyle.opacity = val;
			this.visible = +val;
		}).bind(this, val), delay);
	}
};
IScroll.utils = utils;
if ( typeof module != 'undefined' && module.exports ) {
	module.exports = IScroll;
} else {
	window.IScroll = IScroll;
}
})(window, document, Math);

+ 163 - 0
html/grzx/js/iscroll-pull-up-down.js

@ -0,0 +1,163 @@
var IScrollPullUpDown = function (wrapperName,iScrollConfig,pullDownActionHandler,pullUpActionHandler) {
				var iScrollConfig,pullDownActionHandler,pullUpActionHandler,pullDownEl,pullDownOffset,pullUpEl,scrollStartPos;
				var pullThreshold=5;
				var me=this;
			
				function showPullDownElNow(className) {
					// Shows pullDownEl with a given className
					pullDownEl.style.transitionDuration='';
					pullDownEl.style.marginTop='';
					pullDownEl.className = 'pullDown '+className;
				}
				var hidePullDownEl = function (time,refresh) {
					// Hides pullDownEl
					pullDownEl.style.transitionDuration=(time>0?time+'ms':'');
					pullDownEl.style.marginTop='';
					pullDownEl.className = 'pullDown scrolledUp';
			
					// If refresh==true, refresh again after time+10 ms to update iScroll's "scroller.offsetHeight" after the pull-down-bar is really hidden...
					// Don't refresh when the user is still dragging, as this will cause the content to jump (i.e. don't refresh while dragging)
					if (refresh) setTimeout(function(){me.myScroll.refresh();},time+10);
				}
			
				function init() {
					var wrapperObj = document.querySelector('#'+wrapperName);
					var scrollerObj = wrapperObj.children[0];
			
					if (pullDownActionHandler) {
						// If a pullDownActionHandler-function is supplied, add a pull-down bar at the top and enable pull-down-to-refresh.
						// (if pullDownActionHandler==null this iScroll will have no pull-down-functionality)
						pullDownEl=document.createElement('div');
						pullDownEl.className='pullDown scrolledUp';
						pullDownEl.innerHTML='<span class="pullDownIcon"></span><span class="pullDownLabel">下拉刷新</span>';
						scrollerObj.insertBefore(pullDownEl, scrollerObj.firstChild);
						pullDownOffset = pullDownEl.offsetHeight;
					}
					if (pullUpActionHandler) {
						// If a pullUpActionHandler-function is supplied, add a pull-up bar in the bottom and enable pull-up-to-load.
						// (if pullUpActionHandler==null this iScroll will have no pull-up-functionality)
						pullUpEl=document.createElement('div');
						pullUpEl.className='pullUp';
						pullUpEl.innerHTML='<span class="pullUpIcon"></span><span class="pullUpLabel" style="margin: 3px 20%">上拉加载更多</span>';
						scrollerObj.appendChild(pullUpEl);
					}
			
					me.myScroll = new IScroll(wrapperObj,iScrollConfig);
			
					me.myScroll.on('refresh',function() {
						if ((pullDownEl)&&(pullDownEl.className.match('loading'))) {
							pullDownEl.querySelector('.pullDownLabel').innerHTML = '下拉刷新';
							if (this.y>=0) {
								// The pull-down-bar is fully visible:
								// Hide it with a simple 250ms animation
								hidePullDownEl(250,true);
			
							} else if (this.y>-pullDownOffset) {
								// The pull-down-bar is PARTLY visible:
								// Set up a shorter animation to hide it
			
								// Firt calculate a new margin-top for pullDownEl that matches the current scroll position
								pullDownEl.style.marginTop=this.y+'px';
			
								// CSS-trick to force webkit to render/update any CSS-changes immediately: Access the offsetHeight property...
								pullDownEl.offsetHeight;
			
								// Calculate the animation time (shorter, dependant on the new distance to animate) from here to completely 'scrolledUp' (hidden)
								// Needs to be done before adjusting the scroll-positon (if we want to read this.y)
								var animTime=(250*(pullDownOffset+this.y)/pullDownOffset);
			
								// Set scroll positon to top
								// (this is the same as adjusting the scroll postition to match the exact movement pullDownEl made due to the change of margin-top above, so the content will not "jump")
								this.scrollTo(0,0,0);
			
								// Hide pullDownEl with the new (shorter) animation (and reset the inline style again).
								setTimeout(function() {	// Do this in a new thread to avoid glitches in iOS webkit (will make sure the immediate margin-top change above is rendered)...
									hidePullDownEl(animTime,true);
								},0);
			
							} else {
								// The pull-down-bar is completely off screen:
								// Hide it immediately
								hidePullDownEl(0,true);
								// And adjust the scroll postition to match the exact movement pullDownEl made due to change of margin-top above, so the content will not "jump"
								this.scrollBy(0,pullDownOffset,0);
							}
						}
						if ((pullUpEl)&&(pullUpEl.className.match('loading'))) {
							pullUpEl.className = 'pullUp';
							pullUpEl.querySelector('.pullUpLabel').innerHTML = '上拉加载更多';
						}
					});
			
					me.myScroll.on('scrollStart',function() {
						scrollStartPos=this.y; // Store the scroll starting point to be able to track movement in 'scroll' below
					});
						
					me.myScroll.on('scroll',function() {
						if (pullDownEl||pullUpEl) {
							if((scrollStartPos==0)&&(this.y==0)) {
								// 'scroll' called, but scroller is not moving!
								// Probably because the content inside wrapper is small and fits the screen, so drag/scroll is disabled by iScroll
								
								// Fix this by a hack: Setting "myScroll.hasVerticalScroll=true" tricks iScroll to believe
								// that there is a vertical scrollbar, and iScroll will enable dragging/scrolling again...
								this.hasVerticalScroll=true;
								
								// Set scrollStartPos to -1000 to be able to detect this state later...
								scrollStartPos=-1000;
							} else if ((scrollStartPos==-1000) && 
								         (((!pullUpEl)&&(!pullDownEl.className.match('flip'))&&(this.y<0)) ||
												  ((!pullDownEl)&&(!pullUpEl.className.match('flip'))&&(this.y>0)))) {
								// Scroller was not moving at first (and the trick above was applied), but now it's moving in the wrong direction.
								// I.e. the user is either scrolling up while having no "pull-up-bar",
								// or scrolling down while having no "pull-down-bar" => Disable the trick again and reset values...
								this.hasVerticalScroll=false;
								scrollStartPos=0;
								this.scrollBy(0,-this.y, 0);	// Adjust scrolling position to undo this "invalid" movement
							}
						}
				
						if (pullDownEl) {
							if (this.y > pullDownOffset+pullThreshold && !pullDownEl.className.match('flip')) {
								showPullDownElNow('flip');
								this.scrollBy(0,-pullDownOffset, 0);	// Adjust scrolling position to match the change in pullDownEl's margin-top
								pullDownEl.querySelector('.pullDownLabel').innerHTML = '界面刷新中...';
							} else if (this.y < 0 && pullDownEl.className.match('flip')) { // User changes his mind...
								hidePullDownEl(0,false);
								this.scrollBy(0,pullDownOffset, 0);	// Adjust scrolling position to match the change in pullDownEl's margin-top
								pullDownEl.querySelector('.pullDownLabel').innerHTML = '下拉刷新';
							}
						}
						if (pullUpEl) {
							if (this.y < (this.maxScrollY - pullThreshold) && !pullUpEl.className.match('flip')) {
								pullUpEl.className = 'pullUp flip';
								pullUpEl.querySelector('.pullUpLabel').innerHTML = '正在加载...';
							} else if (this.y > (this.maxScrollY + pullThreshold) && pullUpEl.className.match('flip')) {
								pullUpEl.className = 'pullUp';
								pullUpEl.querySelector('.pullUpLabel').innerHTML = '上拉加载更多';
							}
						}
					});			
			
					me.myScroll.on('scrollEnd',function() {
						if ((pullDownEl)&&(pullDownEl.className.match('flip'))) {
							showPullDownElNow('loading');
							pullDownEl.querySelector('.pullDownLabel').innerHTML = 'Loading...';
							pullDownActionHandler(this);	// Execute custom function (ajax call?)
						}
						if ((pullUpEl)&&(pullUpEl.className.match('flip'))) {
							pullUpEl.className = 'pullUp loading';
							pullUpEl.querySelector('.pullUpLabel').innerHTML = 'Loading...';
							pullUpActionHandler(this);	// Execute custom function (ajax call?)
						}
						if (scrollStartPos=-1000) {
							// If scrollStartPos=-1000: Recalculate the true value of "hasVerticalScroll" as it may have been
							// altered in 'scroll' to enable pull-to-refresh/load when the content fits the screen...
							this.hasVerticalScroll = this.options.scrollY && this.maxScrollY < 0;
						}
					});
			
				}
				window.addEventListener('load', function() {init()}, false);
				return me.myScroll;
			};	

File diff suppressed because it is too large
+ 3 - 0
html/grzx/js/lrz.all.bundle.js


+ 455 - 0
html/grzx/js/my-detail.js

@ -0,0 +1,455 @@
var d = dialog({contentType:'load', skin:'bk-popup'});
var d1 = dialog({contentType:'load', skin:'bk-popup',content:'退出中..'});
var pagetype = 11;
var openid =null;
var userAgent = window.localStorage.getItem(agentName);
var firstUid = window.localStorage.getItem("firstUid");
if(firstUid == null || firstUid == undefined){
	document.getElementById("divChangeLogin").style.display='none';
}
var bindCardUrl = "",
    bindCardStatus;
if(userAgent){
	var jsonstr = $.parseJSON(userAgent);
	openid = jsonstr.openid;
}
$(function() {	
	checkUserAgent();
});	
appendFamilyMember($('#memberContainer'),function(){
	queryInit();
	clearCommittee()
	var jsonstr = $.parseJSON(window.localStorage.getItem(agentName));
	if(jsonstr.uid == jsonstr.represented){
		$('#divChangeLogin').show()
		//判断是否可以在线支付
        if(canPayOnline){
            $("#elecard").show();
        }else{
            $("#elecard").hide();
        }
	}else{
		$('#divChangeLogin').hide()
		$("#elecard").hide();
	}
},function(){
	//判断有授权家人,修改样式
	if($('#memberContainer').is(':hidden')){
		$('#content').css('padding-top','0px');
	}else{
		$('#content').css('padding-top','90px');
	}
});
function queryInit(){
	d.show();
	
	isRepresent(function() {
		//查询用户信息
		query();
		
	    getWeixinSign();
	    bindEvents();
	    //选择居委会
	    selectCommittee()
	})
    
}
//获得微信sdk信息
function getWeixinSign(){
    var params1 = {};
    params1.pageUrl = server + "wx/html/grzx/html/my-detail.html&state=STATE";
    
    $.ajax(server + "weixin/getSign", {
        data: params1,
        dataType: "json",
        type: "post",
        success: function(res){
            if (res.status == 200) {
                var t = res.data.timestamp;
                var noncestr = res.data.noncestr;
                var signature = res.data.signature;
                wx.config({     
                    //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
                    appId: appId, // 必填,公众号的唯一标识
                    timestamp: t, // 必填,生成签名的时间戳
                    nonceStr: noncestr, // 必填,生成签名的随机串
                    signature: signature,// 必填,签名,见附录1
                    jsApiList: [
                        'chooseImage',
                        'uploadImage'
                    ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
                });
            } 
        }
    }); 
}
//跳转到三师信息
function changeSanshi(){
	window.location.href = "../../qygl/html/signing-doctors.html";
}
//跳转到家庭签约信息
function changeJtqy(signedStatus){
	if(signedStatus) {
		window.location.href = "../../ssgg/html/doctor-homepage-new.html"
	} else {
		window.location.href = "../../qygl/html/signing-doctors.html"
	}
}
//查询列表
function query() {
//	var data={};
//	sendPost('patient/baseinfo', data, 'json', 'post', queryFailed, querySuccess);
    //初始查询患者基本信息,然后调用接口判断该患者是否已绑定电子社保卡
    var reqParams = [{
        url: "patient/baseinfo",
        data: {},
        reqType: 'post'
    },{
        url: "/patient/bindCard",
        data: {},
        reqType: 'post'
    }]
    getReqPromises(reqParams).then(function(ress){
        querySuccess(ress[0]);
        //处理绑卡
        var res2 = ress[1];
        if(res2.data.bindStatus == '030007'){
            bindCardStatus = false;
            bindCardUrl = res2.data.sicardUrl;
        }else if(res2.data.bindStatus == '000000'){
            bindCardStatus = true;
            bindCardUrl = res2.data.sicardUrl;
        }else{
            dialog({contentType:'tipsbox', skin:'bk-popup' , content:res2.msg}).show();
        }
        //判断是否可以在线支付
        if(canPayOnline){
            $("#elecard").show();
            $("#elecardStatus").text(bindCardStatus? "已绑定" : "未绑定");
        }else{
            $("#elecard").hide();
        }
    });
}
function queryFailed(res) {
	d.close();
	if (res && res.msg) {
		dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();      
	} else {
		dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'初始化失败'}).show(); 
	}
}
function querySuccess(res) {
	d.close();
	if (res.status == 200) {
		setValue(res.data);	
		if($("#ssc").val() != ""){
			$("#ssc").attr("readonly","readonly");
		}
		//取药码
		if(res.data.prescription == 1){
			$('#myMedicine').show()
		}else{
			$('#myMedicine').hide()
		}
	}
}
function  bindEvents(){
    $("#backLogin").click(function (){
        dialog({
            content:'您确定继续退出登录吗?',
            ok: function (){
                d1.show()
                sendPost("patient/wxloginout",{},"JSON","POST",function(res){
                    d1.close()
                    if (res && res.msg) {
                        dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();      
                    } else {
                        dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'退出登录失败!'}).show(); 
                    }
                },function(res){
                    d1.close()
                    if(res.status==200){
                        clearAgent();
                        window.localStorage.removeItem("isTiXingVideoFaSong");//清除咨询详情移动网络下,用户点击不再提醒后的处理,换账号登陆后,还可以重新提醒
                        location.replace("../../home/html/zhmm-login.html?type=11&openid="+openid);
                    }else{
                        if (res && res.msg) {
                            dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();      
                        } else {
                            dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'退出登录失败!'}).show(); 
                        }   
                    }
                })
            
            },
            cancel: function () {
                return;
            }
        }).showModal();
    });
    
    //绑定电子社保卡
    $('#elecard').on('tap',function(){
        if(!bindCardStatus){
            dialog({
                content: '当前未绑定电子社保卡,无法进行线上缴费,是否立即绑定',
                cancelValue: '不了,谢谢',
                cancel: function () {},
                okValue:'是',
                ok: function (){
                    window.location.href = bindCardUrl;
                }
            }).showModal();
        }else {
            window.location.href = bindCardUrl;
        }
    });
    
    //电子健康卡点击事件
    $("#healthcard").on('tap', function(){
    	window.location.href = "my-health-card.html"
//      d.show();
//      var url = "/patient/ehc/redirecturl";
//      sendPost(url, {}, 'json', 'post', queryFailed, function(res){
//          if(res.status == 200){
//              d.close();
//              window.location.href = res.data;
//          }else{
//              queryFailed(res);
//          }
//      })
    })
}
//初始化页面数据
function setValue(data){
	var photo = data.photo;
	var name = data.name;
	var sex = data.sex;
	var mobile = data.mobile;
	var idcard = data.idcard;
	var ssc = data.ssc;
	var address = data.address;
	var medicareNumber = data.medicareNumber || "";
	var sign = Number(data.sign);
	
	var sexName = "女";
	if(sex == 1) {
		sexName = "男";
	}
	if(!photo){
		photo = "../../../images/p-default.png";
	}	
	if(!name) name = "";
	if(!mobile) mobile = "";
	if(!idcard) idcard = "";
	if(!ssc) ssc = "";
	if(!address) address = "";
	
	document.getElementById("photo").src = getImgUrl(photo);
	document.getElementById("name").value = name;			
	document.getElementById("sex").innerHTML = sexName;
	document.getElementById("mobile").innerHTML = mobile;
	document.getElementById("idcard").innerHTML = idcard;
	document.getElementById("medicareNumber").innerHTML = medicareNumber;
	document.getElementById("ssc").value = ssc;
	document.getElementById("address").innerHTML = address;
	$('#committee').text(data.countryName);
}
// 添加文件
function appendFile(p) {
	document.getElementById("photo").src = p;
	$("#photo").attr("data-src",p);
}
//获取需要上传的图片
function getImages() {
	var images = [];
	var imgSrc = $("#photo").attr("data-src");
	images.push(imgSrc);
	return images;
}
//剪切图片
function clip_photo(){
    $("#content").addClass("c-hide");
    $("#clipPanel").removeClass("c-hide");
    var photo = document.getElementById('file_head');
    lrz(photo.files[0]).then(function (rst) {
        var url = rst.base64;
        new AlloyCrop({
            image_src: url,
            width: document.documentElement.clientWidth,
            height: document.documentElement.clientWidth,
            ok_text: "保存",
            cancel_text: "取消",
            ok: function (base64, canvas) {
                $("#content").removeClass("c-hide");
                var data=base64.split(',')[1];
                data=window.atob(data);
                var ia = new Uint8Array(data.length);
                for (var i = 0; i < data.length; i++) {
                    ia[i] = data.charCodeAt(i);
                }
                var blob=new Blob([ia],{type:"image/png",endings:'transparent'});
                var fd=new FormData();
                fd.append('file',blob,'image.png');
                
                var new_url = URL.createObjectURL(blob);
                appendFile(new_url);
                $.ajax(server + 'upload/image', {
                    data: fd,
                    dataType: 'json',
                    contentType: false,
                    cache: false,
                    processData: false,
                    beforeSend: function(request) {
                        request.setRequestHeader("userAgent", userAgent);
                    },
                    type: 'post',
                    error: function(res) {
                        if(res.status == 999 || res.status == 998 || res.status == 997){
                            loginUrl(res.status);
                            return;
                        }
                        clickCount = 0;
                    },
                    success: function(res) {
                        if(res.status == 999 || res.status == 998 || res.status == 997){
                            loginUrl(res.status);
                            return;
                        }
                        var params = {};
                        params.photo = res.urls;
                        var patientUrl = res.urls;
                        sendPost('patient/save', params, 'json', 'post', submitFailed, submitSuccess);
                        clickCount = 0;
                    }
                });
            },
            cancel: function () {
                $("#content").removeClass("c-hide");
            }
        });
    })
    .catch(function (err){
        // 处理失败会执行
        console.log(err);
    });
    
}
// 上传头像
var serverId = "";
function chooseImage(){
	wx.chooseImage({
	  count: 1, 
      success: function (res) {
      	appendFile(res.localIds[0]);
        uploadImage();
      }
    });
}	
//获取微信上传图片的媒体ID
function uploadImage(){
	var images = getImages();
	if (images.length == 0) {
      return;
    }
    var i = 0, length = images.length;
    serverId = "";
    function upload() {
      wx.uploadImage({
        localId: images[i],
        success: function (res) {
          i++;
          if(serverId.length == 0){
          	serverId = res.serverId;
          }
          else{
          	serverId =serverId + "," + res.serverId;
          }          
          if (i < length) {
            upload();
          }
          if(i == images.length){
          	update_photo();
          }          
        },
        fail: function (res) {
          alert(JSON.stringify(res));
        }
      });
    }
    upload();
}	
//上传图片到服务器上
function update_photo(){
	var params = {};
	params.mediaIds = serverId;	
	sendPost('patient/save', params, 'json', 'post', submitFailed, submitSuccess);
}
//上传失败
function submitFailed(res) {
	if (res && res.msg) {
		dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();      
	} else {
		dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'上传失败'}).show(); 
	}
}
//上传成功
function submitSuccess(res) {
	if (res.status == 200) {
	    $("#content").removeClass("c-hide");
	    $("#clipPanel").addClass("c-hide");
	} else {
		submitFailed(res);
	}
}	
//查看图片
function viewImg(dom) {
	var $img = $(dom);
	var thissrc = $img.attr("data-src");
	var mWid = $(window).width();
	var mHei = $(window).height();
	var nHtml = '<div class="delimgpop"><div class="del-img-box"><div class="del-img-con"><img class="del-pop-img" src="' + thissrc + '" style="max-width:' + mWid + 'px; max-height:' + mHei + 'px;"></div></div></div>';
	$("body").append(nHtml);
	$(".delimgpop").click(function() {
		$(this).remove()
	});
};
function myMedicine(){
	window.location.href = "../../prescription/html/my-medicine-code.html";
}
function myFeedback(){
	window.location.href = "../../yjfk/html/feedback.html";
}
function updatePwd(){
	var mobile = $('#mobile').html();
	window.location.href = "shezhimima.html?type=" + pagetype + "&openid=" + openid + "&mobile="+ mobile + "&1=1";
}
function updateAddress(){
	var address = $('#address').html();
	var paramAgent = "{\"type\":" + pagetype + ",\"openid\":\"" + openid + "\",\"address\":\"" + encodeURI(address) + "\"}";
	window.localStorage.setItem("paramAgent", paramAgent);
	window.location.href = "xiugaidizhi.html?type=" + pagetype + "&openid=" + openid + "&mobile="+ mobile + "&1=1";
}
function updateMobile(){
	var mobile = $.trim($('#mobile').html());
	if(mobile.length==0)
		window.location.href = "bangdingsj.html?type=" + pagetype + "&openid=" + openid + "&1=1";
	else
		window.location.href = "shenfenyz.html?type=" + pagetype + "&openid=" + openid + "&mobile="+ mobile + "&1=1";
}

+ 108 - 0
html/grzx/js/my-doctor-advice.js

@ -0,0 +1,108 @@
mui.plusReady(function() {
//	mui(".c-list").on("tap", "li", function() {
//		openWebview("my-doctor-advice-detail.html");
//	});
	//查询列表
	//queryList();
});
function queryList() {
	plus.nativeUI.showWaiting();
	//拼请求内容
	var params = {};
	params.page = 1;
	params.pageSize = 10;
	//发送ajax请求
	sendPost("patient/doctor_orders/doctot_list", params, "json", "post", queryListFailed, queryListSuccesss);
}
function queryListFailed(res) {
	console.log(res.status);
	if (res && res.msg) {
		plus.nativeUI.toast(res.msg);
	} else {
		plus.nativeUI.toast("数据加载失败");
	}
	plus.nativeUI.closeWaiting();
}
function queryListSuccesss(res) {
	if (res.status == 200) {
		//成功
		showList(res.data.list);
	} else {
		//非200则为失败
		queryListFailed(res);
	}
	plus.nativeUI.closeWaiting();
}
/**
 * 显示查询结果
 * @param {Object} list
 */
function showList(list) {	
	var _html = "";
	for (var i = 0; i < list.length; i++) {
		var data = list[i];
		if (!data) {
			continue;
		}
		//addRow(data.content, data.czrq);
		_html+="<li class='c-list-cover' attr_content='"+data.doc_code+"'>";
		_html+="<div class='c-avatar-m'>";
		_html+="<img class='c-images-cycle' src='../../../images/d-default.png'>";
		_html+="</div>";
		_html+="<div class='c-list-info ptb10'>";
		_html+="<h4 class='c-nowrap'>";
		_html+=data.doc_name;
		_html+="<span class='title'>"+data.job+"</span>";
	    _html+="<span class='ml5 c-666 c-f12'>"+data.dept+"</span>";
		_html+="</h4>";
		_html+="<p>"+data.hospital+"</p>";
		_html+="</div>";
//		_html+="<div class='c-list-value' style='margin-right:10px; '>"+data.time.substring(0, 10)+"</div>";
		_html+="</li>";
	}
	$("#ul_order").html(_html);
	
	$("#ul_order").on("click","li",function(){
	 	var content = $(this).attr('attr_content');
	 	mui.openWindow({
			url: "my-doctor-advice_1.html",
			extras: {
				doctor: content
			},
		});
	})
}
function li_click(content){
	mui.openWindow({
			url: "my-doctor-advice-detail.html",
			extras: {
				content: content
			},
		});
}
function addRow(content, czrq) {
	var ul = document.querySelector("#item");
	var li = document.createElement("li");
	li.className = "c-list-text";
	li.onclick = function() {
		mui.openWindow({
			url: "my-doctor-advice-detail.html",
			extras: {
				content: content
			},
		});
	};
	var html = '<div class="c-list-info">';
	html += '<h4 class="c-nowrap">' + content + '</h4></div>'
	html += '<div class="c-list-value">' + czrq.substring(0, 10) + '</div>';
	li.innerHTML = html;
	ul.appendChild(li);
}

+ 108 - 0
html/grzx/js/my-equipments.js

@ -0,0 +1,108 @@
var d = dialog({contentType:'load', skin:'bk-popup'});
var pagetype = 14;
$(function() {
	queryList();
});
function queryList() {
	d.show();
	//拼请求内容
	var params = {};
	params.id = 0;
	params.pagesize = 60;
	//发送ajax请求
	sendPost("patient/device/list", params, "json", "post", queryListFailed, queryListSuccesss);
}
function queryListFailed(res) {
	d.close().remove();
	if (res && res.msg) {
		var d1 = dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg});   
	} else {
		var d2 = dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'加载失败'});
	}
}
function queryListSuccesss(res) {
	if (res.status == 200) {
		if(res.data.list.length==0){
			//没有一个设备
			var _htm = "<li id='tishi_add' class='c-list-text c-list-link' >"
            _htm+= "<div class='c-list-key'style='margin:0 auto;'>您还没有设备,赶快添加吧</div>"               
            _htm+="</li>"
            $("#equ_list").html(_htm);
		}else{
			//有设备			
			showList(res.data.list);
		}	
		d.close().remove();
	} else {
		//非200则为失败
		queryListFailed(res);
	}	
	
}
/**
 * 清空tbody
 */
function clearHTML() {
	$("#equ_list").html("");
}
/**
 * 显示查询结果
 * @param {Object} list
 */
function showList(list) {
	clearHTML();
	var _html = "";
	for (var i = 0; i < list.length; i++) {
		var data = list[i];
		if (!data) {
			continue; 
		}
		_html+="<li class='c-list-text c-list-link' attr_code="+data.code+" attr_name="+data.name+" attr_sn="+data.sn+">"
	    _html+="<div class='c-list-key'>"+data.name+"</div>"
	    _html+="<div class='c-list-info c-t-right'>"+data.sn+"</div>"
	    _html+="<span class='list-icon arrow-right'></span>"
	    _html+="</li>";
		
	}
	$("#equ_list").html(_html); 
	
	$("#equ_list").on("click","li",function(){
	 	var attr_code = $(this).attr('attr_code');
	 	var attr_name = $(this).attr('attr_name');
	 	var attr_sn = $(this).attr('attr_sn');
	 	
	 	//获取现在有的设备类别以及名称
        var params = {}
        params.code = attr_code;
        var dev_list={};
        
		//发送ajax请求, 查询设备列表信息
		sendPost("patient/device/info", params, "json", "post", queryListFailed,device_info_Successs);				
		function device_info_Successs(res){		
			var category=res.data.category;
			var type_name='';
			//发送ajax请求, 查询设备类型
			sendPost("patient/device/category"," ", "json", "post", queryListFailed,device_type_Successs);
			function device_type_Successs(reso){
				dev_list=reso.list;	
				for(var i=0;i<reso.list.length;i++){
					if(reso.list[i].code==category){
						type_name=reso.list[i].name;
						var befor_url="equipment-detail.html";
						//拼接url参数
						var _url=""+befor_url+"?code="+attr_code+"&category="+category+"&type_name="+type_name+"&name="+attr_name+"&sn="+attr_sn+"";
						//字符串转码(中文)
						var e_url = encodeURI(encodeURI(_url));
						window.location.href=e_url;	
					}
				}
			} 	
		}
	})
}
			

+ 189 - 0
html/grzx/js/select-committee.js

@ -0,0 +1,189 @@
//选择居委会  jwcode基卫的code 有直接提交功能
//<div id="committee"></div>
var ddd = dialog({contentType:'load', skin:'bk-popup',content:'数据提交中'});
function selectCommittee(){
	var content = '<div id="sheet" class="mui-popover mui-popover-bottom mui-popover-action">\
        <div id="sheet_committee" style="height:314px;background-color: #fff;position: relative;">\
        	<div class="md-title">所属居委会</div>\
        	<div class="md-bttn-true">确定</div>\
        	<div class="md-bttn-false">取消</div>\
        	<ul class="md-tag" id="showTitle"></ul>\
        	<div id="district" class="mui-scroll-wrapper md-wrapper">\
                <div class="mui-scroll" style="width:100%!important">\
            		<ul class="mui-table-view"></ul>\
            	</div>\
			</div>\
			<div id="town" class="mui-scroll-wrapper md-wrapper c-hide">\
                <div class="mui-scroll" style="width:100%!important">\
            		<ul class="mui-table-view"></ul>\
            	</div>\
			</div>\
			<div id="village" class="mui-scroll-wrapper md-wrapper c-hide">\
                <div class="mui-scroll" style="width:100%!important">\
            		<ul class="mui-table-view"></ul>\
            	</div>\
			</div>\
		</div>\
    </div>';
    $('body').append(content)
	nextWork()
	
	function nextWork(){
		var $tit = $('#showTitle'),
	    	$sel0 = '<li class="active">请选择</li>',
	    	$sel1='',
	    	$sel2='',
	    	$list = $('.md-wrapper'),
	    	$true = $('.md-bttn-true'),
	    	$false = $('.md-bttn-false');
	    var countryCode,
	    	jwcode,
	    	countryName;
	    $('#selectType').click(function(){
	    	mui('#sheet').popover('show');
	    	if(!$tit.text().trim()){
	    		$tit.html($sel0);
	    		var data={};
				sendPost('patient/sign/getTownList', data, 'json', 'get', queryAddrFailed ,function(res){
					if(res.status == 200){
						var list="";
						$.map(res.data,function(item,index){
							list +='<li data-code='+item.code+'>'+item.name+'</li>';
						})
						$('#district').find('ul').empty().append(list);
					}else{
						queryAddrFailed(res);
					}
				})
	    	}
	    	$true.hide();
	    	$false.show();
	    })
	    
	    //请求数据
	    function queryAddrFailed(res) {
			if (res && res.msg) {
				dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();      
			} else {
				dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'数据加载失败'}).show(); 
			}
		}
	    
	    mui('#village').scroll({
	    	bounce: false //是否启用回弹
	    }).scrollTo(0,0,100);
	    mui('#district').scroll({
		    	bounce: false //是否启用回弹
		    })
	    mui('#town').scroll({
		    	bounce: false //是否启用回弹
		    }).scrollTo(0,0,100);
	    
	    //区
	    $('#district').on('click','li',function(){
	    	var $this = $(this);
	    	changeList($('#town'),$this); 
	    	$true.hide();
	    	$false.show();
	    	$sel1 = '<li>'+$this.text()+'</li>';
	    	$tit.html($sel1+$sel0);
	    	var data={
	    		town:$this.data('code')
	    	};
			sendPost('patient/sign/getStreetListByTown', data, 'json', 'get', queryAddrFailed ,function(res){
				if(res.status == 200){
					var list="";
					$.map(res.data,function(item,index){
						list +='<li data-code='+item.code+'>'+item.name+'</li>';
					})
					$('#town').find('ul').empty().append(list);
				}else{
					queryAddrFailed(res);
				}
			})
	    })
	    //街道
	    $('#town').on('click','li',function(){
	    	var $this = $(this);
	    	changeList($('#village'),$this);
	    	$true.hide();
	    	$false.show();
	    	$sel2 = '<li>'+$this.text()+'</li>';
	    	$tit.html($sel1+$sel2+$sel0);
	    	var data={
	    		street:$this.data('code')
	    	};
			sendPost('patient/sign/getCountryListByStreet', data, 'json', 'get', queryAddrFailed ,function(res){
				if(res.status == 200){
					var list="";
					if(res.data.length>0){
						$.map(res.data,function(item,index){
							list +='<li data-jwcode='+item.jwCode+' data-code='+item.code+'>'+item.name+'</li>';
						})
					}else{
						
					}
					$('#village').find('ul').empty().append(list);
				}else{
					queryAddrFailed(res);
				}
			})
	    })
	    //居委会
	    $('#village').on('click','li',function(){
	    	var $this = $(this);
	    	changeList($('#village'),$this); 
	    	countryCode = $this.attr('data-code');
	    	jwcode = $this.attr('data-jwcode');
	    	countryName = $this.text();
	    	$true.show();
	    	$false.hide();
	    })
	    
	    $tit.on('click','li',function(){
	    	var $this = $(this);
	    	if(! $this.hasClass('active')){
	    		$this.addClass('active').siblings().removeClass('active');
	    		$list.hide();
	    		$list.eq($this.index()).show();
	    	}
	    })
	    //取消
	    $false.click(function(){
	    	mui('#sheet').popover('hide');
	    })
	    //确定
	    $true.click(function(){
	    	mui('#sheet').popover('hide');
    		ddd.show();
	    	var data={
	    		countryCode:countryCode
	    	};
			sendPost('patient/sign/updatePatientCountry', data, 'json', 'get',function(){
				ddd.close();
				dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'保存失败'}).show(); 
			},function(res){
				if(res.status == 200){
					ddd.close();
					$('#committee').text(countryName);
					dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'保存成功'}).show(); 
				}else{
					ddd.close();
					dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'保存失败'}).show();
				}
			})
	    })
	    
	    function changeList($next,$li){
	    	$li.addClass('active').siblings().removeClass('active');
	    	$list.hide();
	    	$next.show();	
	    }
	}	
}
//清空选择
function clearCommittee(){
	$('#showTitle').text('');
	$('.md-wrapper').hide();
    $('#district').show();
}

+ 174 - 0
html/grzx/js/transform.js

@ -0,0 +1,174 @@
/* transformjs
 * By dntzhang
 */
;(function () {
    var Matrix3D = function (n11, n12, n13, n14, n21, n22, n23, n24, n31, n32, n33, n34, n41, n42, n43, n44) {
        this.elements =window.Float32Array ? new Float32Array(16) : [];
        var te = this.elements;
        te[0] = (n11 !== undefined) ? n11 : 1; te[4] = n12 || 0; te[8] = n13 || 0; te[12] = n14 || 0;
        te[1] = n21 || 0; te[5] = (n22 !== undefined) ? n22 : 1; te[9] = n23 || 0; te[13] = n24 || 0;
        te[2] = n31 || 0; te[6] = n32 || 0; te[10] = (n33 !== undefined) ? n33 : 1; te[14] = n34 || 0;
        te[3] = n41 || 0; te[7] = n42 || 0; te[11] = n43 || 0; te[15] = (n44 !== undefined) ? n44 : 1;
    };
    Matrix3D.DEG_TO_RAD = Math.PI / 180;
    Matrix3D.prototype = {
        set: function (n11, n12, n13, n14, n21, n22, n23, n24, n31, n32, n33, n34, n41, n42, n43, n44) {
            var te = this.elements;
            te[0] = n11; te[4] = n12; te[8] = n13; te[12] = n14;
            te[1] = n21; te[5] = n22; te[9] = n23; te[13] = n24;
            te[2] = n31; te[6] = n32; te[10] = n33; te[14] = n34;
            te[3] = n41; te[7] = n42; te[11] = n43; te[15] = n44;
            return this;
        },
        identity: function () {
            this.set(
                1, 0, 0, 0,
                0, 1, 0, 0,
                0, 0, 1, 0,
                0, 0, 0, 1
            );
            return this;
        },
        multiplyMatrices: function (a, be) {
            var ae = a.elements;
            var te = this.elements;
            var a11 = ae[0], a12 = ae[4], a13 = ae[8], a14 = ae[12];
            var a21 = ae[1], a22 = ae[5], a23 = ae[9], a24 = ae[13];
            var a31 = ae[2], a32 = ae[6], a33 = ae[10], a34 = ae[14];
            var a41 = ae[3], a42 = ae[7], a43 = ae[11], a44 = ae[15];
            var b11 = be[0], b12 = be[1], b13 = be[2], b14 = be[3];
            var b21 = be[4], b22 = be[5], b23 = be[6], b24 = be[7];
            var b31 = be[8], b32 = be[9], b33 = be[10], b34 = be[11];
            var b41 = be[12], b42 = be[13], b43 = be[14], b44 = be[15];
            te[0] = a11 * b11 + a12 * b21 + a13 * b31 + a14 * b41;
            te[4] = a11 * b12 + a12 * b22 + a13 * b32 + a14 * b42;
            te[8] = a11 * b13 + a12 * b23 + a13 * b33 + a14 * b43;
            te[12] = a11 * b14 + a12 * b24 + a13 * b34 + a14 * b44;
            te[1] = a21 * b11 + a22 * b21 + a23 * b31 + a24 * b41;
            te[5] = a21 * b12 + a22 * b22 + a23 * b32 + a24 * b42;
            te[9] = a21 * b13 + a22 * b23 + a23 * b33 + a24 * b43;
            te[13] = a21 * b14 + a22 * b24 + a23 * b34 + a24 * b44;
            te[2] = a31 * b11 + a32 * b21 + a33 * b31 + a34 * b41;
            te[6] = a31 * b12 + a32 * b22 + a33 * b32 + a34 * b42;
            te[10] = a31 * b13 + a32 * b23 + a33 * b33 + a34 * b43;
            te[14] = a31 * b14 + a32 * b24 + a33 * b34 + a34 * b44;
            te[3] = a41 * b11 + a42 * b21 + a43 * b31 + a44 * b41;
            te[7] = a41 * b12 + a42 * b22 + a43 * b32 + a44 * b42;
            te[11] = a41 * b13 + a42 * b23 + a43 * b33 + a44 * b43;
            te[15] = a41 * b14 + a42 * b24 + a43 * b34 + a44 * b44;
            return this;
        },
        // 解决角度为90的整数倍导致Math.cos得到极小的数,其实是0。导致不渲染
        _rounded: function(value,i){
            i= Math.pow(10, i || 15);
            // default
            return Math.round(value*i)/i;
        },
        appendTransform: function (x, y, z, scaleX, scaleY, scaleZ, rotateX, rotateY, rotateZ,skewX,skewY, originX, originY, originZ) {
            var rx = rotateX * Matrix3D.DEG_TO_RAD;
            var cosx =this._rounded( Math.cos(rx));
            var sinx = this._rounded(Math.sin(rx));
            var ry = rotateY * Matrix3D.DEG_TO_RAD;
            var cosy =this._rounded( Math.cos(ry));
            var siny = this._rounded(Math.sin(ry));
            var rz = rotateZ * Matrix3D.DEG_TO_RAD;
            var cosz =this._rounded( Math.cos(rz * -1));
            var sinz =this._rounded( Math.sin(rz * -1));
            this.multiplyMatrices(this, [
                1, 0, 0, x,
                0, cosx, sinx, y,
                0, -sinx, cosx, z,
                0, 0, 0, 1
            ]);
            this.multiplyMatrices(this, [
                cosy, 0, siny, 0,
                0, 1, 0, 0,
                -siny, 0, cosy, 0,
                0, 0, 0, 1
            ]);
            this.multiplyMatrices(this,[
                cosz * scaleX, sinz * scaleY, 0, 0,
                -sinz * scaleX, cosz * scaleY, 0, 0,
                0, 0, 1 * scaleZ, 0,
                0, 0, 0, 1
            ]);
            if(skewX||skewY){
                this.multiplyMatrices(this,[
                    this._rounded(Math.cos(skewX* Matrix3D.DEG_TO_RAD)), this._rounded( Math.sin(skewX* Matrix3D.DEG_TO_RAD)), 0, 0,
                    -1*this._rounded(Math.sin(skewY* Matrix3D.DEG_TO_RAD)), this._rounded( Math.cos(skewY* Matrix3D.DEG_TO_RAD)), 0, 0,
                    0, 0, 1, 0,
                    0, 0, 0, 1
                ]);
            }
            if (originX || originY || originZ) {
                this.elements[12] -= originX * this.elements[0] + originY * this.elements[4] + originZ * this.elements[8];
                this.elements[13] -= originX * this.elements[1] + originY * this.elements[5] + originZ * this.elements[9];
                this.elements[14] -= originX * this.elements[2] + originY * this.elements[6] + originZ * this.elements[10];
            }
            return this;
        }
    };
    function observe(target, props, callback) {
        for (var i = 0, len = props.length; i < len; i++) {
            var prop = props[i];
            watch(target, prop, callback);
        }
    }
    function watch(target, prop, callback) {
        Object.defineProperty(target, prop, {
            get: function () {
                return this["__" + prop];
            },
            set: function (value) {
                if (value !== this["__" + prop]) {
                    this["__" + prop] = value;
                    callback();
                }
            }
        });
    }
    window.Transform = function (element) {
        observe(
            element,
            ["translateX", "translateY", "translateZ", "scaleX", "scaleY", "scaleZ" , "rotateX", "rotateY", "rotateZ","skewX","skewY", "originX", "originY", "originZ"],
            function () {
                var mtx = element.matrix3D.identity().appendTransform( element.translateX, element.translateY, element.translateZ, element.scaleX, element.scaleY, element.scaleZ, element.rotateX, element.rotateY, element.rotateZ,element.skewX,element.skewY, element.originX, element.originY, element.originZ);
                element.style.transform = element.style.msTransform = element.style.OTransform = element.style.MozTransform = element.style.webkitTransform = "perspective("+element.perspective+"px) matrix3d(" + Array.prototype.slice.call(mtx.elements).join(",") + ")";
            });
        observe(
            element,
            [ "perspective"],
            function () {
                element.style.transform = element.style.msTransform = element.style.OTransform = element.style.MozTransform = element.style.webkitTransform = "perspective("+element.perspective+"px) matrix3d(" + Array.prototype.slice.call(element.matrix3D.elements).join(",") + ")";
            });
        element.matrix3D = new Matrix3D();
        element.perspective = 500;
        element.scaleX = element.scaleY = element.scaleZ = 1;
        //由于image自带了x\y\z,所有加上translate前缀
        element.translateX = element.translateY = element.translateZ = element.rotateX = element.rotateY = element.rotateZ =element.skewX=element.skewY= element.originX = element.originY = element.originZ = 0;
    }
})();