鍍金池/ 問答/HTML/ JS如何判斷是不是iphoneX?

JS如何判斷是不是iphoneX?

目前只想到一種方法,不知道大家是怎么判斷的?

function isIphoneX(){
    return /iphone/gi.test(navigator.userAgent) && (screen.height == 812 && screen.width == 375)
}
回答
編輯回答
葬愛

function hasNotch() {

if (CSS.supports('padding-left: constant(safe-area-inset-left)')) {
    var div = document.createElement('div');
    div.style.paddingLeft = 'constant(safe-area-inset-left)';
    document.body.appendChild(div);
    var calculatedPadding =  parseInt(window.getComputedStyle(div).paddingLeft);
    document.body.removeChild(div);
    if (calculatedPadding > 0) {
        return true;
    } 
}
return false;

}

可以用新增的 safe-area-inset-bottom 屬性判斷

2018年6月26日 11:31
編輯回答
只愛你

之前在大漠老師的文章里有看過這樣判斷:

var isIPhone = navigator.appVersion.match(/iphone/gi);
if(isIPhone){
    // hello
}
2018年3月22日 17:36
編輯回答
爆扎

參考這篇文章,通過GPU查看,GPU相同,就查看分辨率。通過 JavaScript 獲取移動(dòng)設(shè)備的型號

2018年5月25日 16:22
編輯回答
悶騷型

目前普遍用的還是判斷屏幕分辨率的吧

2018年7月10日 16:42
編輯回答
假灑脫

雖然我沒做過iPhoneX適配,但我覺得可以實(shí)在不行就別嫌麻煩,用排除法吧

2017年5月11日 13:57
編輯回答
解夏
var isIphoneX = /iphone[\s\S]*OS X/.test(navigator.userAgent)
2017年6月15日 03:06