密通学院

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 3943|回复: 0

css和JS判断手机浏览器是横屏or竖屏

[复制链接]

282

主题

27

回帖

8万

铜板

超级版主

Rank: 8Rank: 8

积分
89153
QQ
发表于 2019-4-13 00:38:10 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
我们在开发时,常会需要判断横屏或竖屏,以适应不同显示,下面提供两种方法,给有需要的人。
1、css判断:
写在同一个CSS中
<style>
@media screen and (orientation: portrait) {
  /*竖屏 css*/
}
@media screen and (orientation: landscape) {
  /*横屏 css*/
}
</style>
分开写在2个CSS中
竖屏:<link rel="stylesheet" media="all and (orientation:portrait)" href="portrait.css">
横屏:<link rel="stylesheet" media="all and (orientation:landscape)" href="landscape.css">
2、JS判断:
  1. //判断手机横竖屏状态:
  2. function hengshuping() {
  3.     if (window.orientation == 180 || window.orientation == 0) {
  4.         alert("竖屏状态!")
  5.     }
  6.     if (window.orientation == 90 || window.orientation == -90) {
  7.         alert("横屏状态!")
  8.     }
  9. }
  10. window.addEventListener("onorientationchange" in window ? "orientationchange" : "resize", hengshuping, false);
  11.   
复制代码
jQuery 判断iPad、iPhone、Android是横屏还是竖屏的方法

屏幕方向对应的window.orientation值:

ipad: 90 或 -90 横屏

ipad: 0 或180 竖屏

Andriod:0 或180 横屏

Andriod: 90 或 -90 竖屏
  1. function orient() {
  2.     if (window.orientation == 90 || window.orientation == -90) {
  3.         //ipad、iphone竖屏;Andriod横屏
  4.         $("body").attr("class", "landscape");
  5.         orientation = 'landscape';
  6.         return false;
  7.     } else if (window.orientation == 0 || window.orientation == 180) {
  8.         //ipad、iphone横屏;Andriod竖屏
  9.         $("body").attr("class", "portrait");
  10.         orientation = 'portrait';
  11.         return false;
  12.     }
  13. }
  14. //页面加载时调用
  15. $(function() {
  16.     orient();
  17. });
  18. //用户变化屏幕方向时调用
  19. $(window).bind('orientationchange', function(e) {
  20.     orient();
  21. });
复制代码
如果您有业务需求,可以和我联系:
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

首页|Archiver|手机版|小黑屋|密通学院:专业网络营销服务商

GMT+8, 2024-12-22 13:32 , Processed in 0.137696 second(s), 25 queries QQ

Powered by XMT Inc. © 2015-2025 ArrayV1.0 豫ICP备17022382号

系统运营:密城通 豫公网安备 41018302000212 号

快速回复 返回顶部 返回列表