【发布时间】:2012-02-06 16:47:51
【问题描述】:
我正在尝试从现有的 jsp 和 xsl 代码中找出创建移动网站(不严格依赖媒体查询)的最佳方式。在不诉诸移动网站的情况下,我们与客户讨论过我们使用当前的 jsp 页面,然后根据用户是否在移动设备上提供不同的代码块。基本上,我知道我可以使用媒体查询隐藏/显示不同的代码,但我会尽可能避免提供额外的代码。谁能指点我这方面的任何信息或解释如何做到这一点?
【问题讨论】:
我正在尝试从现有的 jsp 和 xsl 代码中找出创建移动网站(不严格依赖媒体查询)的最佳方式。在不诉诸移动网站的情况下,我们与客户讨论过我们使用当前的 jsp 页面,然后根据用户是否在移动设备上提供不同的代码块。基本上,我知道我可以使用媒体查询隐藏/显示不同的代码,但我会尽可能避免提供额外的代码。谁能指点我这方面的任何信息或解释如何做到这一点?
【问题讨论】:
使用用户代理在用户会话中设置mobile 标志以记住该会话是针对移动设备的,并使用
<c:if test="${!mobile}">...</c:if>
如果设备不是移动设备,则仅提供 JSP 的给定部分。
请参阅http://detectmobilebrowsers.com/ 了解如何检测移动浏览器。
【讨论】:
response.sendRedirect()。这只是示例代码。如果您检测到移动浏览器,请调整它以在会话中设置一个标志(不要将此代码放在 JSP 中,而是放在过滤器或拦截器中)。
这有助于我检查移动设备
<c:set var="browser" value="${fn:toLowerCase(header['User-Agent'])}" />
【讨论】: