在Joomla中使用Javascript和PHP检测屏幕大小

Detecting Screen Size using Javascript and PHP in Joomla

本文关键字:检测 PHP 屏幕 Javascript Joomla      更新时间:2023-09-26

我有一个有点挑战性的问题(好吧,无论如何它都适合我:)

我正在为想要包含jQuery幻灯片的客户开发一个Joomla模板,我还使用高达480,最多800和超过801px的响应式设计。

我想做的是设置 3 个幻灯片模块(为了便于客户端使用,一个用于 480 宽的图像,一个用于 740 宽的图像和一个用于 940 宽的图像,然后我想根据用户的屏幕大小调用该模块。我知道这需要在 Joomla 中使用 php 来完成,并且它只是一个服务器端脚本,我不喜欢 UA 嗅探。

这就是我的想法,请评论你的想法。

  1. 包括检测$screenWidth变量是否设置的 PHP 函数

  2. 如果没有,请运行 javascript 来检测用户的屏幕宽度,将此变量设置为 URL(或它将保存变量的其他方式(。

  3. 运行 AJAX 页面重新加载

  4. 从 URL 中提取$screenWidth变量。

  5. 原始 isset 现在将返回 true,以便页面继续加载。

  6. 然后使用该变量运行 PHP 代码以加载相应的幻灯片。

你怎么看?它会不会太慢页面?重新加载会起作用并将 URL 保留在 joomla 中吗?

请让我知道您的想法并提供任何建议。

谢谢

您确定需要重新加载页面吗?通过 AJAX 调用从客户端获取 screenWidth 后,您不能生成幻灯片 HTML 并将其发回吗?然后,客户端可以直接将其插入 DOM 中,而无需重新加载页面,并且您不必为维护状态而烦恼。

有很多可能性,但我认为越简单越好。我认为您应该执行以下步骤

编写一个启动 javascript 函数来检查屏幕宽度和高度(screen.availWidth 和 screen.availHeight(,并将其发送到服务器并相应地创建幻灯片并发送回客户端