国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

怎么制作公司的數據大屏

來源:懂視網 責編:小采 時間:2020-11-27 20:10:53
文檔

怎么制作公司的數據大屏

怎么制作公司的數據大屏:說起數據大屏,大家可以想到天貓雙11數據大屏,酷炫!對的,數據大屏就是講究酷炫效果。之前我也做過一次,給大家總結一下我是如何操作的。一、屏幕自適應我這邊只拿到設計師給到的1920*1080的設計圖,但是說不一定是這個尺寸,目前不知道展示這個數據大屏的
推薦度:
導讀怎么制作公司的數據大屏:說起數據大屏,大家可以想到天貓雙11數據大屏,酷炫!對的,數據大屏就是講究酷炫效果。之前我也做過一次,給大家總結一下我是如何操作的。一、屏幕自適應我這邊只拿到設計師給到的1920*1080的設計圖,但是說不一定是這個尺寸,目前不知道展示這個數據大屏的

說起數據大屏,大家可以想到天貓雙11數據大屏,酷炫!對的,數據大屏就是講究酷炫效果。之前我也做過一次,給大家總結一下我是如何操作的。

一、屏幕自適應

我這邊只拿到設計師給到的1920*1080的設計圖,但是說不一定是這個尺寸,目前不知道展示這個數據大屏的屏幕尺寸是多少,因此,只能做出自適應效果!如何做到自適應效果呢。想了幾種方案,目前我用的方案是采用vh和vw單位來進行頁面布局。關于這兩個單位的一些介紹,我之前有篇文章寫過,http://www.haorooms.com/post/css_unit_calc 。 這樣就可以實現自適應布局了。

用vh和vw單位的好處

1、可以實現滾動軸出現,頁面不閃動效果,代碼如下:

@media screen and (min-width: 960px) { //之所以進行寬度判斷,是因為移動端滾動軸不占寬度
 html {
 margin-left: calc(100vw - 100%);
 margin-right: 0;
 }}

自此,我們就不用再苦逼的計算滾動軸的寬度了,關于計算滾動軸的寬度,請點擊

2、因為我是全屏的,不需要出現滾動軸,但是不同的縮放屏幕,有可能會出現滾動軸,可以用如下代碼,取消滾動軸顯示。

html {
 width:100vw;
 height:100vh;
 overflow:hidden;}

壞處

1、計算起來相對麻煩

2、在父級元素是定位的情況下,完全可以用百分比替代,百分比比VH和VW兼容性好。(我的數據大屏不需要很好的兼容性,因此選用了vh和vw)

二、數字和百分比滾動效果

關于數字滾動效果,我很久之前用過一個插件,但是這個使用圖片進行的滾動,因為我很麻煩,我們目前完全可以用css3來進行數字滾動!

三、setTimeout每執行一次,時間增加一秒

這個應用比較多的是每隔一個隨機數字,執行一段代碼,相隔時間是不一樣的!

我一開始用setInterval,但是發現每次執行的時間都是第一次執行的時間,那是因為setInterval被調用后,就會被加入到定時器執行隊列中,等待綁定的函數被執行,也就是說設置的interval時間只會有效一次。那就改用了setTimeout,關于setTimeout,我之前文章也提及過!

執行一個隨機數代碼如下:

function runRandom(obj){
 var timeout=Math.round(Math.random()*1000+1000);
 clearTimeout(obj.randomTime);
 obj.randomTime=setTimeout(function timeoutFun(){
 //執行你的邏輯
 timeout=Math.round(Math.random()*1000+1000);
 obj.randomTime=setTimeout(timeoutFun,timeout);
 },timeout);}

我的部分代碼如下:

flip:function(obj){
 var _this =this;
 clearTimeout(obj.flip);
 obj.flip=setTimeout(function timeoutFun(){
 if(_this.SwithIndex<5){
 $("#dataUpadteSwitch").find("li").eq(_this.SwithIndex).addClass("current").siblings().removeClass("current");
 _this.SwithIndex++;
 _this.initTime+=1000;//每執行一次增加1000毫秒
 // console.log(_this.initTime)
 //右上角百分比,速度快慢可以調整
 _this.baifenbiAnimate("loadingDatabfb",0,1,100,10+_this.SwithIndex*10);
 //右上角旋轉動畫,快慢可以調整-調整旋轉速度變慢-推遲0.5s
 _this.routedSpeed((1+_this.SwithIndex/2)+"s");
 }else{
 _this.SwithIndex=0;//循環執行,執行5次之后從頭開始執行
 _this.initTime=3000;//一開始是3000毫秒
 }
 obj.flip=setTimeout(timeoutFun,_this.initTime);
 },_this.initTime);}

四、echart 自動觸發tooltip

數據大屏中很多都是自動觸發的,沒有鼠標交互,每隔幾秒執行一次,我們用到了一個類似中國地圖的表格,但是tooltip是自動觸發的,每隔幾秒更新一下數據,觸發一次!

首先把tooltip下面的triggerOn設置為none,然后通過dispatchAction來觸發,官方API解釋比較模糊,其實很簡單,代碼如下:

myChart.dispatchAction({
 type: 'showTip',
 // 系列的 index,在 tooltip 的 trigger 為 axis 的時候可選。
 name: (convertData(obj.mapData.sort(function(a, b) {
 return b.value - a.value;
 }).slice(0, 1)))[0].name //獲取最多數據的名字});

這樣就可以自動觸發了

五、用svg制作動態時鐘

數據大屏上面需要有一個動態的時間,時間是跳動的,還需要一個時鐘。我在這里共享一下我的代碼:

html代碼如下:

 <div id="nowtimes">
 <div class="parent">
 <svg height="200" width="200" viewBox="0 0 1000 1000">
 <path d="M978,500c0,263.99-214.01,478-478,478s-478-214.01-478-478,214.01-478,478-478,478,214.01,478,478zm-888.93,237.25,20.179-11.65m779.16-449.85l22.517-13m-648.18,648.18,11.65-20.18m449.85-779.16l13-22.517m-711.75,410.93h23.305m899.7,0h26m-885.43-237.25,20.179,11.65m779.16,449.85,22.517,13m-648.18-648.18l11.652,20.183m449.85,779.16,13,22.517m-237.25-885.43v23.305m0,899.7,0,26"/>
 <path d="M500,500,500,236" id="hour"/>
 <path d="M500,500,500,120" id="min" />
 <path d="M500,500,500,90" id="sec" />
 </svg>
 </div>
 <div class="tdtimes" id="tdtimes"></div>
 </div>

css代碼如下:

/* 鐘表樣式*/svg {position: absolute;top: 10%; width: 100%; height: 80%;}path { stroke: #fff;stroke-linecap:round; stroke-width: 35;fill:none;}#sec { stroke: #fff; stroke-width: 20;}#min {stroke: #fff;stroke-width: 30;}#hour { stroke: #fff;stroke-width: 30;}#nowtimes{margin-top:7px;}#nowtimes .parent{width:30px;position:relative;height:30px;display: inline-block;vertical-align: middle;}.tdtimes{display: inline-block;font-size:.7vw;color:#979798;vertical-align: middle;}

js代碼如下:

 setInterval(function() {
 function r(el, deg) {
 el.setAttribute('transform', 'rotate('+ deg +' 500 500)')
 }
 var d = new Date();
 r(sec, 6*d.getSeconds());
 r(min, 6*d.getMinutes());
 r(hour, 30*(d.getHours()%12) + d.getMinutes()/2);
 $("#tdtimes").html(d.getHours() +":" +d.getMinutes() +":" +d.getSeconds());
 }, 1000)

這樣就完成了小時鐘及右側跳動時間的效果!

相信看了這些案例你已經掌握了方法,更多精彩請關注Gxl網其它相關文章!

相關閱讀:

怎樣用css3做出圖標效果

怎么用CSS3做出燈光照射顯示文字動畫

css3點擊顯示漣漪特效

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

怎么制作公司的數據大屏

怎么制作公司的數據大屏:說起數據大屏,大家可以想到天貓雙11數據大屏,酷炫!對的,數據大屏就是講究酷炫效果。之前我也做過一次,給大家總結一下我是如何操作的。一、屏幕自適應我這邊只拿到設計師給到的1920*1080的設計圖,但是說不一定是這個尺寸,目前不知道展示這個數據大屏的
推薦度:
標簽: 怎么做 企業 制作
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 亚欧美 | 亚洲欧美另类自拍 | 国产精品人成人免费国产 | 亚洲精品第一页 | 国内精品一级毛片免费看 | 狼人综合伊人 | 么公又大又硬又粗又爽的视频 | 国产日韩一区二区三区 | 欧美视频亚洲视频 | 一区二区免费在线观看 | 国产免费精彩视频 | 国产在线一区视频 | 草逼视频免费看 | 看全色黄大色大片免费久久久 | 六月丁香网站 | 日韩欧美精品 | 日韩欧美亚洲综合 | 国产网站视频 | 国产三级一区 | 国产成人精品免费视频大全可播放的 | 一97日本道伊人久久综合影院 | 国产高清不卡一区二区 | 久久国产精品最新一区 | 久久se精品一区二区国产 | 欧美在线观看一区二区 | 亚洲 国产 日韩 欧美 | 91久久国产综合精品女同国语 | 中文字幕一区久久久久 | 亚洲欧美另类在线观看 | 久久久久9999| 国产区在线免费观看 | 亚洲精品乱码久久久久久中文字幕 | 国产第八页 | 国产网站免费在线观看 | 亚洲一区免费在线观看 | 91视频免费看 | 国产成人成人一区二区 | 亚洲一区 中文字幕 久久 | 国产又黄又爽的视频 | 免费黄a | 91精品一区二区三区久久久久 |