You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
147 lines
3.2 KiB
147 lines
3.2 KiB
<template>
|
|
<div class="fast-box">
|
|
<div class="bg-box" style="flex: 1">
|
|
<div :key="a" v-for="a in 4"></div>
|
|
</div>
|
|
<div class="con-box" id="bobaodiv">
|
|
<div :key="item.a" class="flex-1 flex-row" style="height: 25%" v-for="item in dataList">
|
|
<div class="flex-1">{{ item.a }}</div>
|
|
<div class="flex-1">{{ item.b }}</div>
|
|
<div class="flex-1">{{ item.c }}</div>
|
|
</div>
|
|
<div :key="index" class="flex-1 flex-row" style="height: 25%" v-for="(item, index) in dataList">
|
|
<div class="flex-1">{{ item.a }}</div>
|
|
<div class="flex-1">{{ item.b }}</div>
|
|
<div class="flex-1">{{ item.c }}</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
export default {
|
|
name: 'FastEd',
|
|
data() {
|
|
return {
|
|
str: 'FAST ED结果',
|
|
height: '',
|
|
width: '',
|
|
liHeight: '',
|
|
dataList: [
|
|
{
|
|
a: '1.面部对侧',
|
|
b: '正常',
|
|
c: '0分',
|
|
},
|
|
{
|
|
a: '2.上肢',
|
|
b: '中度无力',
|
|
c: '1分',
|
|
},
|
|
{
|
|
a: '3.语言运动',
|
|
b: '正常',
|
|
c: '0分',
|
|
},
|
|
{
|
|
a: '4.语言感觉',
|
|
b: '异常',
|
|
c: '1分',
|
|
},
|
|
{
|
|
a: '5.眼球凝视',
|
|
b: '一测活动困难',
|
|
c: '1分',
|
|
},
|
|
],
|
|
oMarquee: null, //播报的容器
|
|
BBLineH: null,
|
|
BBScrollAmount: 1,
|
|
BBLineCount: 5,
|
|
rollRestTime: 500,
|
|
rollTime: 10,
|
|
};
|
|
},
|
|
mounted() {
|
|
this.BBLineH = document.getElementsByClassName('fast-box')[0].offsetHeight * 0.25;
|
|
this.scrollBox();
|
|
},
|
|
methods: {
|
|
scrollBox() {
|
|
/*
|
|
* 启动播报滚动事件
|
|
*/
|
|
const that = this;
|
|
window.onload = function() {
|
|
// BBAllTime = 0;
|
|
that.oMarquee = document.getElementById('bobaodiv'); //滚动对象
|
|
window.setTimeout(function() {
|
|
that.run();
|
|
}, that.rollRestTime);
|
|
};
|
|
},
|
|
/*
|
|
* 播报滚动事件主逻辑
|
|
*/
|
|
run() {
|
|
const that = this;
|
|
if (that.BBScrollAmount == 0) {
|
|
//若单次滚动的距离为0,则开始下一次监听,不计数
|
|
window.setTimeout(function() {
|
|
that.run();
|
|
}, that.rollTime);
|
|
return;
|
|
}
|
|
if (that.oMarquee.scrollTop >= that.BBLineCount * that.BBLineH) {
|
|
//滚动完一次数据后,复位
|
|
that.oMarquee.scrollTop = 0;
|
|
}
|
|
that.oMarquee.scrollTop += that.BBScrollAmount;
|
|
if (that.oMarquee.scrollTop % that.BBLineH < 1 && that.oMarquee.scrollTop > 0) {
|
|
window.setTimeout(function() {
|
|
that.run();
|
|
}, that.rollRestTime);
|
|
} else {
|
|
window.setTimeout(function() {
|
|
that.run();
|
|
}, that.rollTime);
|
|
}
|
|
},
|
|
},
|
|
};
|
|
</script>
|
|
|
|
<style lang="stylus" scoped>
|
|
.bg-box {
|
|
height: 100%;
|
|
|
|
div {
|
|
height: 25%;
|
|
}
|
|
|
|
div:nth-of-type(even) {
|
|
background: #023567;
|
|
}
|
|
}
|
|
|
|
.fast-box {
|
|
position: relative;
|
|
}
|
|
|
|
.con-box {
|
|
top: 0;
|
|
left: 0;
|
|
position: absolute;
|
|
width: 100%;
|
|
height: 100%;
|
|
overflow: hidden;
|
|
font-weight: 600;
|
|
font-size: 14px;
|
|
color: #eee;
|
|
|
|
div {
|
|
justify-content: center;
|
|
align-items: center;
|
|
}
|
|
}
|
|
</style>
|
|
|