我有一个用于桌面的 codeigniter 应用程序,当使用相同的代码从移动设备访问时,它可以转换为移动应用程序吗?
3 回答
您有两个选择,创建响应式设计或创建一个桌面设计和基于用户代理的移动设计。
如果您的设计很容易适应两个世界(桌面和移动),只需稍作调整,响应式设计就足够了。但在您选择这种方式之前,请记住您拥有大量具有多种屏幕分辨率的移动设备。
我建议您阅读有关移动网络的幻灯片: http ://www.slideshare.net/bryanrieger/rethinking-the-mobile-web-by-yiibu
仅供参考,我们在市场上拥有的移动设备类型。 http://jquerymobile.com/gbs/
为了帮助您进行响应式设计,您可以使用互联网上的一些框架:
推特引导:http: //twitter.github.com/bootstrap/index.html
基础 3: http: //foundation.zurb.com/
骨架:http ://www.getskeleton.com/
YAML 4:http ://www.yaml.de/
您可以在此处查看更多框架http://www.awwwards.com/what-are-frameworks-22-best-responsive-css-frameworks-for-web-design.html
如果您的桌面布局不适合作为适当的移动布局,您可以依赖用户代理,尽管他不是 100% 准确,并构建两种不同的布局。在桌面端你可以使用之前提到的一些响应式框架,在移动端你可以使用:
jQuery 移动:http: //jquerymobile.com/
目标用户界面:http ://www.rikulo.org/
最好的是两个世界的混合,一个为桌面用户提供大小屏幕的响应式设计,一个为移动用户提供适当的设计。
两者的区别在于应用程序的模板或视图部分。基本上,您必须识别访问者设备,如果是移动设备,则向他展示您准备的移动视图。
您可以使用 jquery mobile 创建出色的响应式移动模板。
是的,我过去就是这样做的。
我所做的是使用用户代理类来检测用户代理是桌面客户端还是移动客户端,并使用它在会话中设置标志。基于此,我根据该标志的值提供不同的观点。这种方法的优点是无论您使用哪个界面,URL 都保持不变。
不过,我建议添加一种手动覆盖它的方法,因为检测用户代理永远不会 100% 准确。