简体   繁体   中英

Does Safari iOS9 returns a wrong value for window.innerHeight?

Here is my viewport meta tag :

    <meta name="viewport" content="user-scalable=no, initial-scale = 1, minimum-scale = 1, maximum-scale = 1, width=device-width">

On Safari iOS 8, window.innerHeight and $(window).height() both returns the same value: 928 on an iPad.

But on Safari iOS 9, window.innerHeight and $(window).height() returns different values: respectively 1461 and 559 on an iPhone 6s running iOS 9.0 or 1154 and 905 on an iPad mini running iOS 9.1.

Is this a bug in Safari or is it intended? Where does that 1461 come from on my iPhone? Should I be using $(window).height() (which returns the value I want) instead of window.innerHeight ?

Yes, i experienced the same behavior...

Using $(window).height() seems to work, but I guess it's better to change the meta-tag.

See Here

<meta name="viewport" content="width=device-width initial-scale=1 shrink-to-fit=no">

adding "shrink-to-fit=no" to the viewport meta tag fixed an erroneous window.innerHeight value on resize for me -

https://forums.developer.apple.com/thread/13510

尝试将您的元标记更改为..

<meta name="viewport" content="initial-scale=1.0001, minimum-scale=1.0001, maximum-scale=1.0001, user-scalable=no"/>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM