Rumah hujung hadapan web tutorial js JavaScript实现移动端页面按手机屏幕分辨率自动缩放示例

JavaScript实现移动端页面按手机屏幕分辨率自动缩放示例

Aug 20, 2017 am 10:06 AM
javascript js telefon bimbit

这篇文章主要介绍了移动端页面按手机屏幕分辨率自动缩放的js代码,通过阻止浏览器的默认行为各方面分析缩放的功能实现,具体操作步骤大家可查看下文的详细讲解,感兴趣的小伙伴们可以参考一下。

 手机的屏幕有大有小,移动web最好做成响应式布局,也就是自适应屏幕,没有固定宽高,这样的话,在所有手机上都可以正常显示。关于移动端页面按手机屏幕分辨率自动缩放的js,先附上代码


<script>
  var phoneWidth = parseInt(window.screen.width);
  var phoneHeight = parseInt(window.screen.height);
  var phoneScale = phoneWidth/750;//除以的值按手机的物理分辨率
  var ua = navigator.userAgent;
  if (/Android (\d+\.\d+)/.test(ua)) {
   var version = parseFloat(RegExp.$1);
   // andriod 2.3
   if (version > 2.3) {
    document.write(&#39;<meta name="viewport" content="width=device-width,initial-scale=&#39;+phoneScale+&#39;,minimum-scale=&#39;+phoneScale+&#39;,maximum-scale=&#39;+phoneScale+&#39;,user-scalable=no">&#39;);
    // andriod 2.3以上
   } else {
    document.write(&#39;<meta name="viewport" content="width=device-width,user-scalable=no">&#39;);
   }
   // 其他系统
 } else {
   document.write(&#39;<meta name="viewport" content="width=device-width, initial-scale=&#39;+phoneScale+&#39;,minimum-scale=&#39;+phoneScale+&#39;,maximum-scale =&#39;+phoneScale +&#39;,user-scalable=no,">&#39;);
  }
</script>
Salin selepas log masuk

做手机端页面最头疼的就是物理分辨率和逻辑分辨率的转换了,当拿到设计图的时候,图基本都是按物理分辨率来设计的,一般常用的为640(iphone5/5s)、750(iphone6/6s),而谷歌等浏览器采用小手机模式浏览页面的时候,上面的值为逻辑分辨率,调试的时候很难把控页面样式,在手机端的样式也会因此大乱,在页面头部加入以上一段js之后,在手机端就可以正常显示了,

var phoneScale = phoneWidth/750;

除以的为设计图设计的页面宽度,750是按iphone6来设计(根据自己使用需求来修改),即让页面的 放大比率=屏幕的逻辑分辨率/物理分辨率,从而达到适应手机的效果。

(注意,有时候页面加了这段代码在调试的时候,切记刷新,刷新过后就会按手机缩放比例显示)

概念解析:

phys.width:一般我们所指的宽度width即为phys.width,物理宽度(物理分辨率)

device-width:又称为css-width,设备宽度(逻辑分辨率)

其中我们可以获取phys.width通过document.documentElement.clientWidth;

而获取css-width通过 window.screen.width获取。

所以这里 phoneWidth(逻辑分辨率) = parseInt(window.screen.width);

如iphone6的phys.width为750px,而css-width为375px。

明白一个浏览器默认行为。

试想,浏览器如果把电脑端的980px的网页展现在宽度为750px的iphone6手机屏上,势必会放不下,手机端横向会出现滚动条,怎么阻止这种情况呢,很简单,浏览器默认一个虚拟窗口,不同浏览器有不同的虚拟窗口宽度的默认值如:safari iphone:980px;

opera:850px;

Andriod webkit:800px;

IE:974px;

然后会把这个980px虚拟窗口装进宽度为750px的iphone6中,当然这样的话必须缩放,这就是为什么在手机中展现电脑端页面没有出现横向滚动条,而且字迹明显变小的原因。

initial-scale=&#39;+phoneScale+&#39;,minimum-scale=&#39;+phoneScale+&#39;,maximum-scale=&#39;+phoneScale+&#39;
Salin selepas log masuk

这段代码切记要指定 initial-scale=***,在安卓系统中,不指定默认的nitial-scale=***,只指定最小和最大缩放值,也可以正常显示,但是safari浏览器则会失效,对于宽度是100%的页面, 则显示为页面的30%左右的宽。

target-densitydpi=device-dpi
Salin selepas log masuk

WebKit内核默认按照160的DPI来排版。假如设备真实DPI是480,宽度是1080,在WebKit会按160DPI,360宽度来排版。排版结束后在放大到1080宽。

所以当取window.innerwidth之类的值的时候,取的是WebKit实际排版宽度360,而不是1080.

target-densitydpi=device-dpi可以强制内核以480DPI排版,使画面更精细,window.innerwidth也将为屏幕宽度1080.

但WebKit从去年开始取消了对target-densitydpi的支持。(所以现在不建议写该属性了)

想实现target-densitydpi=device-dpi的效果有什么方法?提交此次补丁的WebKit开发者说可以用responsive images 和 CSS device units来替代。

Atas ialah kandungan terperinci JavaScript实现移动端页面按手机屏幕分辨率自动缩放示例. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Telefon mudah alih OPPO A3x dikeluarkan: dilengkapi dengan MediaTek Dimensity 6300, versi 4+128GB berharga 1199 yuan Telefon mudah alih OPPO A3x dikeluarkan: dilengkapi dengan MediaTek Dimensity 6300, versi 4+128GB berharga 1199 yuan Jul 30, 2024 am 01:27 AM

Menurut berita pada 29 Julai, sebagai tambahan kepada telefon mudah alih OPPO A3 Vibrant Edition berharga 1,799 yuan, OPPO turut melancarkan A3x (PKD130), tersedia dalam tiga warna: putih cahaya bintang, ungu malam gelap dan merah jambu bulu awan. Menurut @Perfectly arranged digital, OPPOA3x nampaknya model luar talian Perbezaan utama daripada versi aktif ialah lensa belakang digantikan dengan kamera dwi 32+2MP. Harga ringkasan adalah seperti berikut: 4+128GB versi 1199 yuan 6+128GB versi 1499 yuan 8+256GB versi 1999 yuan 1. Dilengkapi dengan pemproses MediaTek Dimensity 6300, dilengkapi dengan memori LPDDR4X dan memori storan kilat UFS2.2, menyokong pengembangan 2TB menggunakan "skrin cahaya matahari" 6.67 inci, dengan resolusi 1600x720, 1

Telefon mudah alih Samsung Galaxy S25 Ultra bocor: 6.86 inci, nisbah skrin-ke-badan mendatar 94.1% Telefon mudah alih Samsung Galaxy S25 Ultra bocor: 6.86 inci, nisbah skrin-ke-badan mendatar 94.1% Aug 17, 2024 pm 01:49 PM

Menurut berita pada 17 Ogos, sumber @ibinguniverse menyiarkan di Weibo hari ini, menyatakan bahawa saiz tepat Apple iPhone 16 Pro Max ialah 6.88 inci, dan saiz tepat Galaxy S25 Ultra ialah 6.86 inci Kedua-duanya boleh dianggap sebagai 6.9 inci . Sumber menunjukkan bahawa Samsung Galaxy S25 Ultra mempunyai badan yang lebih sempit dan skrin yang lebih luas daripada S24 Ultra, dengan nisbah skrin-ke-badan mendatar sebanyak 94.1%, manakala nisbah skrin-ke-badan S24 Ultra mendatar ialah 91.5%. Fenye menyemak sumber Weibo yang berkaitan Dia juga mengulas pada gambar iPhone 16 Pro Max yang baru terdedah dan percaya bahawa adalah salah untuk berada dekat dengan lengkung mikro Telefon itu sebenarnya adalah skrin lurus + kaca 2.5D.

'Tandem OLED' telah dipopularkan oleh Apple. Bagaimanakah ia lebih baik daripada OLED? 'Tandem OLED' telah dipopularkan oleh Apple. Bagaimanakah ia lebih baik daripada OLED? Aug 19, 2024 am 04:42 AM

Walaupun Apple telah dikritik kerana kekurangan inovasi dalam beberapa tahun kebelakangan ini, Apple tidak selalu berdiri diam. Sekurang-kurangnya dari segi reka bentuk perkakasan, dengan sokongan harga unit produk Apple yang tinggi, juruteranya boleh mencuba beberapa teknologi baharu dengan mudah tanpa perlu memikirkan terlalu banyak isu kos. Sebagai contoh, iPad Pro, sebagai medan ujian "teknologi paparan" kegemaran Apple, iPad Pro telah berada di barisan hadapan dalam teknologi paparan untuk peranti pintar mudah alih daripada miniLED pada tahun 2021 kepada OLED bersamaan pada tahun 2024. Walaupun iPad Pro bukanlah peranti pintar mudah alih pertama yang dilengkapi dengan skrin miniLED (MSI mengeluarkan komputer riba miniLED setahun lebih awal daripada Apple), apabila anda membandingkan parameter kedua-duanya, anda akan segera menyedari bahawa ia tidak sama.

Hynix ialah yang pertama menunjukkan memori kilat UFS 4.1: berdasarkan zarah V9 TLC NAND Hynix ialah yang pertama menunjukkan memori kilat UFS 4.1: berdasarkan zarah V9 TLC NAND Aug 09, 2024 pm 03:33 PM

Menurut berita pada 9 Ogos, di Sidang Kemuncak FMS2024, SK Hynix menunjukkan produk storan terbaharunya, termasuk memori kilat universal UFS4.1 yang belum mengeluarkan spesifikasi secara rasmi. Menurut laman web rasmi Persatuan Teknologi Keadaan Pepejal JEDEC, spesifikasi UFS terkini yang diumumkan pada masa ini ialah UFS4.0 pada Ogos 2022. Kelajuan antara muka teorinya adalah setinggi 46.4Gbps Dijangkakan bahawa UFS4.1 akan meningkatkan lagi penghantaran kadar. 1. Hynix menunjukkan produk memori denyar tujuan umum 512GB dan 1TBUFS4.1, berdasarkan memori denyar V91TbTLCNAND 321 lapisan. SK Hynix juga mempamerkan zarah 3.2GbpsV92TbQLC dan 3.6GbpsV9H1TbTLC. Hynix menunjukkan berasaskan V7

Dikeluarkan pada 1 Ogos, gambar fizikal telefon bimbit Xiaomi POCO M6 Plus 5G dan fon kepala POCO Buds X1 terdedah Dikeluarkan pada 1 Ogos, gambar fizikal telefon bimbit Xiaomi POCO M6 Plus 5G dan fon kepala POCO Buds X1 terdedah Jul 30, 2024 pm 02:29 PM

Menurut berita pada 30 Julai, sumber Yogesh Brar menyiarkan tweet pada platform X semalam (29 Julai), berkongsi gambar fizikal telefon bimbit Xiaomi POCOM6 Plus 5G dan fon kepala POCO Buds X1 Pengumuman rasmi kedua-dua produk itu akan dikeluarkan pada 1 Ogos. Sumber telefon bimbit 5G Xiaomi POCOM6 Plus berkata bahawa telefon bimbit Xiaomi POCOM6 Plus 5G akan dilengkapi dengan skrin LCD 6.8 inci, dilengkapi pemproses Qualcomm Snapdragon 4Gen2AE, dilengkapi dengan kamera 108 megapiksel di bahagian belakang, dan bateri berkapasiti 5030mAh. Seperti yang dilaporkan sebelum ini, telefon ini tersedia dalam tiga warna: ungu, hitam dan perak. Ia lebih kurang sama dengan telefon POCOM6 standard, tetapi cincin denyar LED agak lebih menonjol. POCOB

Kamera bawah skrin 1.5K pertama! Nubia Z70 Ultra ada di sini: telefon skrin penuh sebenar Snapdragon 8 Gen4 pertama di dunia Kamera bawah skrin 1.5K pertama! Nubia Z70 Ultra ada di sini: telefon skrin penuh sebenar Snapdragon 8 Gen4 pertama di dunia Aug 19, 2024 pm 03:47 PM

Menurut berita pada 19 Ogos, Nubia telah mematuhi reka bentuk skrin penuh sebenar sejak keluaran Z50 Ultra, dan telah meneroka secara berterusan bidang fotografi proaktif di bawah skrin piksel tinggi. Hari ini, blogger digital Wisdom Pikachu mengumumkan bahawa Nubia Z70 Ultra, yang akan dikeluarkan pada separuh kedua tahun ini, akan debut dengan teknologi kamera bawah skrin 1.5K, yang merupakan penyelesaian UDC resolusi tertinggi dalam industri jadi jauh. Dilaporkan bahawa penyelesaian proaktif bawah skrin ZTE telah maju ke generasi keenam. Penyelesaian proaktif bawah skrin terkini tersedia dalam siri Nubia Z60 Ultra dan Red Magic 9S Pro. Resolusi skrin ialah 2480x1116, iaitu antara resolusi 1080P dan 1.5K. Kali ini Nubia akan menerobos batasan resolusi sedia ada dan menetapkan penanda aras baharu dalam industri.

Apple dan Huawei kedua-duanya mahu membuat telefon tanpa butang, tetapi Xiaomi membuatnya terlebih dahulu? Apple dan Huawei kedua-duanya mahu membuat telefon tanpa butang, tetapi Xiaomi membuatnya terlebih dahulu? Aug 29, 2024 pm 03:33 PM

Menurut laporan dari Smartprix, Xiaomi sedang membangunkan telefon bimbit tanpa butang yang diberi nama kod "Suzaku". Menurut berita ini, telefon bimbit yang diberi nama kod Zhuque ini akan direka dengan konsep bersepadu, menggunakan kamera bawah skrin, dan dilengkapi dengan pemproses Qualcomm Snapdragon 8gen4 Jika rancangan itu tidak berubah, kita mungkin akan melihat ketibaannya pada tahun 2025 . Apabila saya melihat berita ini, saya fikir saya telah kembali pada tahun 2019 - pada masa itu, Xiaomi mengeluarkan telefon konsep Mi MIX Alpha, dan reka bentuk tanpa butang skrin sekeliling agak menakjubkan. Ini adalah kali pertama saya melihat daya tarikan telefon bimbit tanpa butang. Jika anda mahukan sekeping "kaca ajaib", anda mesti mematikan butangnya terlebih dahulu Dalam "The Biography of Steve Jobs", Jobs pernah menyatakan bahawa dia berharap telefon bimbit itu boleh menjadi seperti kepingan "kaca ajaib".

Untuk menjalankan model Gemini Nano AI Google secara tempatan, telefon Samsung Galaxy S25 Ultra telah didedahkan untuk dilengkapi dengan memori 16GB Untuk menjalankan model Gemini Nano AI Google secara tempatan, telefon Samsung Galaxy S25 Ultra telah didedahkan untuk dilengkapi dengan memori 16GB Jul 31, 2024 pm 05:55 PM

Menurut berita pada 31 Julai, sumber @ibinguniverse menyiarkan tweet pada Dilengkapi dengan memori 16GB. Kemas kini kapasiti memori telefon mudah alih Samsung Samsung telah melancarkan memori 16GB pada telefon mudah alih Galaxy S20 Ultra dan Galaxy S21 Ultra. Bermula daripada Galaxy S22 Ultra, termasuk telefon bimbit Galaxy S24 Ultra unggulan terkini, kapasiti memori telefon mudah alih Samsung dihadkan pada 12GB. Dilaporkan bahawa Samsung Galaxy S25 dan Galaxy S25+ akan datang akan menggunakan 12GB LPDD

See all articles