java - 服务器端的响应式 Web 模式

标签 java scala jakarta-ee lift responsive-design

我一直在阅读有关 responsive web pattern 的内容我已经在测试页上成功实现了它。然而,我发现布局受到 HTML 标签的顺序/序列的限制。您可以在很多内容等上设置 display:none 属性,但这并不好。

那么服务器端有没有办法根据用户使用的设备类型来区分 HTML 响应将包含哪些内容?我主要对 Scala (Lift) 和 Java EE 解决方案感兴趣。

最佳答案

使用 Lift,您可以识别 userAgent,如果它是移动设备,您可以显示与用户使用桌面浏览器不同的 html。

有几种方法可以实现此目的,一种是通过站点地图,另一种是通过每个代码段。

mailing list是询问每种方法细节的好地方。

更新

这是使用 Lift 中的站点地图的示例

def sitemap = SiteMap(
  Menu.i("Home") / "index" >> pickTemplate(),
  Menu.i("First") / "first" 
)

//Show mobile or regular page
def pickTemplate() ={
  //If the browser is Chrome, pick this template
  if(S.request.map(_.isChrome) openOr true  ){
    Template( ()=>Templates("chrome" :: Nil) openOr (NodeSeq.Empty))
  } else{
    Template( ()=>Templates("other" :: Nil) openOr (NodeSeq.Empty))
  }
}

关于java - 服务器端的响应式 Web 模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9548754/

相关文章:

java - 断开长开关

java - Java 中的 Hazelcast Sql 查询

java - 应用程序架构: request processing

java - 使用 Struts 2 通配符配置时如何返回 404 错误?

java - 返回两个值的列表

scala - 如何排除conf文件夹下的文件进行分发?

java - StackOverflowError 在 IntelliJ 上使用 Scala

scala构造函数-局部变量再次

java - 如何知道资源是否在 jsr-196 auth 模块中受到保护?

java - 根据选定的MenuItem资源ID加载字符串资源 - Android JAVA