检测用户的最佳做法是什么?屏幕宽度?

时间:2015-11-09 19:15:23

标签: javascript php joomla

在我的joomla网站上,我有一个默认输出1项的模块,在其help.php文件中,有类似的内容

$items = 1;
$db->setQuery($query, 0, $items)

现在我想检测用户是否'屏幕宽度小于某个值,如果是,则只获得1项,否则获得4项。这样做的最佳做法是什么?

我可以将$ items设置为4并使用javascript消除其他3项,但这不是一个完美的解决方案,因为将下载过多的数据。我的问题是: 1)PHP可以单独检测客户端的屏幕宽度吗? 2)如果没有,我必须使用javascript / ajax,我想添加

<script>
    var w = screen.width;
    href = location.href;
    if (location.search){
       href = href + '&screenWidth=' + w;
    } else
    href = href + '?screenWidth=' + w;
</script>

到每个页面并使用$_GET['screenWidth]来获取helper.php文件中的屏幕宽度值,这是一个好习惯吗?这会不会影响我的CMS(joomla)设置的输出缓冲区sif?

2 个答案:

答案 0 :(得分:2)

只需为项目提供一个CSS,该类将隐藏在移动设备上。

@media(max-width: 768px){
    .some-class{
        display: none;
    }
}

答案 1 :(得分:0)

您无法使用PHP检测屏幕大小,因为它只能在服务器上运行。您可以尝试Mobile Detect它不会告诉您屏幕尺寸,但它会让您知道它是什么类型的设备。