微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – 根据用户窗口大小呈现不同的部分

我想测试用户的浏览器window.width是否> = 800px
如果是这样我想渲染部分A,否则如果window.width> = 800px.

我没什么经验,请解释我的实施选择:
我期待页面上的javascript方法或jQuery.

我试过了

http://scottwb.com/blog/2012/02/23/a-better-way-to-add-mobile-pages-to-a-rails-site/


1.它对我不起作用.
2.即使它确实如此,我预计它将基于使用的设备,而不是像素数.

先感谢您!

解决方法

请求不会包含有关屏幕大小的数据,因此在常识中,服务器无法知道屏幕宽度和服务响应是什么,正如PinnyM在评论中提到的那样.

一般做法是使用用户代理从服务器检测移动设备.用户代理是请求的一部分.它不是100%准确,但在大多数情况下,它仍然可以依赖.

但是,您的问题仍有解决方案 – 根据屏幕尺寸提供服务页面.

解决方法是首先使用Javascript检测屏幕大小,然后使用JS删除cookie.服务器能够读取cookie并决定要呈现的模板.

基本的回购在这里https://github.com/mattstauffer/Simple-RESS这是PHP,但你可以从源代码中获得想法.

还有Rails实现:https://github.com/matthewrobertson/ress,以及介绍:http://matthewrobertson.org/blog/2013/02/15/introducing-ress/

我的观点:我不喜欢这个解决方案,尽管它是可行的.许多工作要做和许多事情要照顾.我宁愿用户代理检测用户代替.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐