重慶分公司,新征程啟航
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
代碼:
問題再現(xiàn)步驟:
第一步:? 打開頁面,能夠正常顯示圖表
第二步:? 點(diǎn)擊隱藏按鈕,讓box隱藏掉,如果此時直接點(diǎn)擊顯示按鈕,圖表依舊可以
正常顯示,沒毛病。重點(diǎn)是,如果此時點(diǎn)擊完了隱藏,不點(diǎn)擊顯示,而是拖動窗口大小
?再來點(diǎn)擊顯示按鈕,就會發(fā)現(xiàn)圖表顯示不出來,為什么會顯示不出來了?
分析產(chǎn)生的原因:
1 點(diǎn)擊隱藏按鈕以后的,此時還沒有拖到窗口大小
會發(fā)現(xiàn)box的確是隱藏了,display:none;
canvas標(biāo)簽內(nèi)的行內(nèi)樣式有width:623px,height:500px;
2 此時開始拖動窗口大小,改變窗口的大小,再來觀察
會發(fā)發(fā)現(xiàn)此時
canvas標(biāo)簽內(nèi)的行內(nèi)樣式變成了 width:0px, height:100px;
這就是為什么此時再來點(diǎn)擊顯示按鈕時,圖表顯示不出來的問題所在,因?yàn)榇藭r畫布的width已經(jīng)為0,
自然而然就顯示不出來,如果此時再拖動窗口大小,圖表就又會顯示出來。
如何解決該問題了?
解決思路就是在點(diǎn)擊顯示按鈕以后,觸發(fā)窗口大小改變事件就可以完成
出現(xiàn)該問題的關(guān)鍵還在于一開始我們并沒有給bar元素設(shè)置width屬性
如果把bar設(shè)置成width:100%,height:100%;就會出現(xiàn)如下問題:
width和height都變成了100px了
如果一開就給bar元素就設(shè)置固定寬度和高度,就不會文章所指的問題了
但有時我們需要做到自適應(yīng)不得不去設(shè)置100%,這就是文中所會出現(xiàn)的問題了。
完成測試代碼:
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。