我的应用程序有两种不同的用户界面,一种是在 PC 上的标准浏览器调用时调用,另一种是在移动设备调用时调用。所以在我的资产目录中,我有
assets
javascripts
application.js
mobile
application.js
stylesheets
application.css
mobile
application.css
mobileapp.css
....
....
views
layouts
application.html.erb
application.mobile.erb
清单文件是:
javascripts/application.js
//= require jquery
//= require jquery_ujs
//= require_directory .
javascripts/mobile/application.js
//= require jquery.mobile
//= require_directory .
样式表/application.css
*= require_self
*= require_directory .
*/
样式表/mobile/application.css
*= require jquery.mobile
*= require_directory .
*/
在开发中一切正常,但是......当我使用移动设备调用应用程序时进入生产模式(Apache/Passenger),我看到使用了移动应用程序布局,但移动/移动应用程序中包含样式。不使用 css。
我无法在移动设备上进行调试(没有 firebug 或 google chrome 开发者工具)。有什么方法可以知道乘客正在为移动设备提供什么服务?我知道,我总是可以使用wireshark 来嗅探网络数据包,但如果它存在一些更高级别的工具,我将不胜感激..
编辑
也许现在我已经弄清楚是什么导致了这个问题。我知道 jquery mobile 会在 DOM 加载后执行它的“魔法”。当乘客(在预编译资产之后)将应用程序提供给移动设备时,会提供正确的页面和正确的应用程序布局,但 Jquery mobile 不会在 DOM 加载时初始化其所有元素,因此我的页面仍处于“混合”状态状态。
有谁遇到过这种问题并解决了?