快速业务通道

精通Grails: Grails与移动Web - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15
一个结果都带有这样的标记:通过 (绿色)、失败(红色)或警告(黄色)。例如,即使 http://m.yahoo.com 好像在各种设备上都显示得 不错,其 XHTML 也不是 100% 遵从的,如图 6 所示:

图 6. 查看 XHTML-MP 遵从性错误

精通Grails: Grails与移动Web(7)

时间:2011-07-29 IBM Scott Davis

再往下看,如图 7 所示,您会看到 Yahoo! 在图像上遗漏了一些 alt 属性,而且在某些情况下没有 指定图像的大小:

图 7. 查看具体的错误

Grails 与 XHTML-MP

那么,Grails 已经可以直接用于开发移动 Web 了吗?图 8 展示了 ready.mobi 验证器提供的关于旅 行计划应用程序的原始清单页面的信息:

图 8. Grails 没有直接遵从 XHTML-MP

精通Grails: Grails与移动Web(8)

时间:2011-07-29 IBM Scott Davis

那就是说,还需要做一些工作。首先,在 grails-app/controllers/AirportController.groovy 中创 建一个 mlist 闭包。除了会返回 5 个(而不是 10 个)元素外,它与默认的闭包没什么不同。创建一个 单独的闭包保留,您就可以原样保持 list.gsp,以进行比较,如清单 6 所示:

清单 6. AirportController 中的新闭包

def mlist = {   if(!params.max) params.max = 5   [airportList:Airport.list(params)] }

现在将 grails-app/views/airport/list.gsp 复制到 mlist.gsp。(一会儿,我将提供一些策略,从 而将移动用户无缝地重定向到正确的内容。这个强有力的方法目前还能满足需求)。

验证器指出网站未返回 XHTML-MP。编辑 mlist.gsp 使它在 <html> 标记中包含有必要的 DTD 和 xmlns 属性。您还需要禁用 meta 标记,因为它会自动将内容类型设置为 text/html。最后一步:将 grails-app/views/layout/main.gsp 中包含 CSS 的行复制到该文件中。(SiteMesh — Grails 使用的 模板库 — 配置为只在默认情况下修饰 text/html 文件)。清单 7 展示了 mlist.gsp:

清单 7. 将 GSP 页面转变成 XHTML-MP

<% response.setContentType ("application/xhtml+xml")%> <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN"      "http://www.wapforum.org/DTD/xhtml-mobile10.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">   <head>    <!--meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/-->    <link rel="stylesheet" href="${createLinkTo(dir:''css'',file:''main.css'')}" />    <meta name="layout" content="main" />    <title>Airport List</title>   </head>   ... </html>

在编辑文件时,也可以简化表布局。验证器指出 <thead> 和 <tbody> 标记有误,所以 需要将其删除。由于手机屏幕的纵向空间要比横向空间大,所以清单 8 所示的布局看起来会好一些:

清单 8. 简化表

<table>   <tr>    <g:sortableColumn property="id" title="Id" />    <g:sortableColumn property="name" title="Name" />   </tr>   <g:each in="${airportList}" status="i" var="airport">   <tr class="${(i % 2) == 0 ? ''odd'' : ''even''}">    <td>     <g:link ac

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号