Отзывчивый веб-шаблон на стороне сервера - PullRequest
2 голосов
/ 03 марта 2012

Я читал о адаптивном веб-шаблоне и успешно внедрил его на тестовой странице.Однако я вижу ограничения в том, что макет ограничен порядком / последовательностью тегов HTML.Вы можете установить свойство display:none для большого количества контента и т. Д., Но это нехорошо.

Так есть ли на стороне сервера способ различать, что будет включать ответ HTML, на основе того, какое устройство используется пользователем?В основном меня интересуют решения Scala (Lift) и Java EE.

1 Ответ

2 голосов
/ 05 марта 2012

Используя Lift, вы можете идентифицировать userAgent и, если он мобильный, вы можете показать другой HTML, чем если бы пользователь использовал браузер на рабочем столе.

Есть несколько способов сделать это, один изКарта сайта или другой файл взяты из каждого фрагмента.

Список рассылки - это хорошее место, чтобы узнать подробности каждого метода.

Обновление

Это пример использования Sitemap из 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))
  }
}
...