怎樣用 JavaScript 準確獲取手機螢幕的寬度和高度?

時間 2021-05-31 19:50:28

1樓:秋池

手機瀏覽器視窗的可視高度會由頂部位址列的隱藏與否而變化,可以監聽window的resize事件準確獲取視窗高度:

var winHeight = window.innerHeight;

window.addEventListener('resize', function(event));

2樓:stuart

一般來說在移動瀏覽器上是拿不到螢幕真實解析度的,因為頁面渲染是在乙個叫viewport的頁面繪製區域內。viewport和螢幕的真實尺寸並不是對應的,如在Safari Mobile中viewport預設寬度(320px)是螢幕真實尺寸(640px)的一半,這裡不管是用window.innerHeight還是window.

screen.width拿到的都是320px。當然我們可以通過meta設定改變viewport的比例,如initial-scale=.

5就可以讓viewport和螢幕一致的尺寸,這個比例在不同的手機上並不一定是2倍關係,特別是Android手機。而且改變viewport比例後可能會導致後續製作中出現一系列問題。

另外Android系統中可以在viewport設定target-densitydpi=device-dpi讓viewport的尺寸和螢幕真實尺寸保持一致,但iOS不起作用,所以這個方法不具有普遍性。

所以我認為不要糾結一定要拿到螢幕真實尺寸,就把viewport的尺寸當成螢幕的尺寸進行頁面設計和製作肯定是沒有問題的。

給乙個viewport設定的示例:

>

>

name

="viewport"

content

="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.

0,user-scalable=no"

/>

>Document

title

>head

>

>body

>html

>每項設定的具體含義我就不拷貝貼上了,可以自行搜尋下。

吐槽:好多設計師在製作手機頁面效果圖時都是使用640的寬度,這是iPhone螢幕的真實尺寸,但頁面呈現時真的不是這個尺寸,製作頁面時會因為寬度不夠導致內容無法像效果圖一樣

「注定孤獨一生」怎樣用英文翻譯最準確?

萌小萌00 我感覺外中國人經常說的表示 注孤生 的一句是 die alone 其實,注孤生意思就是孤獨終老,而die alone 正好表達 孤獨到死 的含義。上例子 職業病,不舉例子的老師不是好老師 你覺得你每次相親 blind date 都不成功,感到心灰意冷,人生無望,你就可以說 I ll ne...

怎樣用Universe Sandbox模擬三體運動?

我是在The Figure 8三體模型中加入的行星,隨機加入的,最後的結局都是飛出去了。所以我覺得三體人完全不必擔心被吞噬,應該小心飛出三體系。 螢火一號 我還真在裡邊模擬過三體運動 發現幾個問題 1,天體距離不能太近 2,初速度不能太小 3,質量相差不能太懸殊 新手容易犯的乙個錯誤,就是把天體擺得...

怎樣用結他寫歌?

之乎者也小磚頭 現在都說什麼不要套什麼和弦套子,但是剛剛開始寫歌,用這個模式或許也是不錯的選擇。首先定下調子 拍數,跟著和弦套子邊彈邊哼哼,應該就會有不錯的靈感,然後就是記下自己的旋律,填詞 加一些合適的節奏之類的。當然剛才說的都只是按圖索驥,找創作的感覺。當你有乙個覺得很上口的旋律的時候,把它在結...