0

我想知道是否可以在 if/else PHP 或 Javascript 中轻松完成类似的事情。我已经阅读了常用的 ress 技术,并且正在尝试找到一种不依赖于 WURFL 等设备检测的解决方案。也许我正在寻找的是所谓的“条件加载”?

我的目标是只加载基于屏幕宽度的适当标记,就像媒体查询一样。例如,我可以为较大的屏幕创建一个完整的导航,为较小的设备/屏幕创建一个更简单的移动友好导航。这将节省大量带宽并使站点真正灵活。感谢您的输入!

{ if < 768 }
some code here {html, php, etc}
{ / if}
{ if > 768 }
some code here {html, php, etc}
{ / if}
4

2 回答 2

0

您可以将element.clientWidth用于 device-width 和window.screen.width。另一种方法是window.matchMedia,它在几乎所有浏览器中都可用。

于 2013-07-28T07:37:48.127 回答
0

有几种方法可以制作这些设计。Javascript 和 php 都可以使用,但会有它们的怪癖。

你说你不想做用户代理测试,所以排除了 PHP。如果您愿意,您可以使用 php 通过执行和测试 iPhone 等来检查用户代理$_SERVER['HTTP_USER_AGENT'],然后在条件语句中显示您想要的内容。

Javascript 可用于测试屏幕大小,方法是使用

window.screen.availWidth AND window.availHeight

这将返回您的网络浏览器可以占用的浏览器的可用高度。对于全分辨率使用window.screen.width AND window.screen.height

这适用于大多数浏览器,但有一个问题。根据像素深度比,您可能无法返回实际屏幕分辨率。例如,我使用具有视网膜屏幕的 Mac。上面列出的 javascript 显示我的屏幕宽度和高度是 1280x800,而实际上它是 2560x1600 或返回值的 2 倍。不过,您可以通过使用视网膜屏幕测试苹果产品并乘以 2 来解决此问题。尽管如此,他的像素深度不会影响网站上对象的比例,它只会使非 hidpi 的图像和视频看起来模糊或像素化。

希望这可以帮助。

于 2013-07-28T07:42:02.743 回答