Ruby on rails Rails 3.1和jQuery mobile:组织JS&;考虑资产管道时的CSS?

Ruby on rails Rails 3.1和jQuery mobile:组织JS&;考虑资产管道时的CSS?,ruby-on-rails,mobile,jquery-mobile,ruby-on-rails-3.1,asset-pipeline,Ruby On Rails,Mobile,Jquery Mobile,Ruby On Rails 3.1,Asset Pipeline,我正在将我的Rails 3.1应用程序与jQuery mobile(目前是Beta 2)集成,我不确定如何组织我的JS和CSS 我在application.mobile.erb的头标签中有这个标签(复制自): 我应该把“application”的样式表链接标签放在上面,这样我的CSS样式就不会覆盖jQuery mobile的花哨CSS吗?“application”的javascript_include_标记呢 或者所有这些都应该完全分开 我只是不确定如何组织所有这些/是否有一种传统的方法来做

我正在将我的Rails 3.1应用程序与jQuery mobile(目前是Beta 2)集成,我不确定如何组织我的JS和CSS

我在application.mobile.erb的头标签中有这个标签(复制自):


我应该把“application”的样式表链接标签放在上面,这样我的CSS样式就不会覆盖jQuery mobile的花哨CSS吗?“application”的javascript_include_标记呢

或者所有这些都应该完全分开

我只是不确定如何组织所有这些/是否有一种传统的方法来做这件事。感谢您的投入

(如果需要,请询问更多详细信息。)

编辑:
*我也在想,我的手机专用JS和CSS应该放在哪里…

这实际上是你自己的决定,你想要什么优先。根据调用顺序,某些内容可能必须优先于其他内容(如果在文件2中调用函数,请确保在调用之前包含定义该函数的文件1)

关于如何使用asset_pipeline,您可以自己下载资产并将其捆绑在
application.css/application.js
中,或者按照适合您的顺序将其保存在
中。

现在有一种方法可以让您在资产管道中使用jQuery Mobile文件

安装很容易。只需将gem添加到应用程序
Gemfile

gem "jquery-mobile-rails"
然后运行
捆绑安装
。然后,您可以添加

//= require jquery.mobile

到你的
应用程序.js
或任何你想包含文件的地方。

就像你一样,我很困惑如何将jQuery Mobile(现在是final 1.0)与Rails 3.1的新资产管道结合使用

首先,将jquery.mobile.js和jquery.mobile.css分别放入assets/javascripts和assets/stylesheet中

其次,在application.js清单中插入“requirejquery.mobile”

//= require jquery
//= require jquery_ujs
//= require jquery.mobile
您的application.css清单也是如此:

*= require_self
*= require_tree .
*= require jquery.mobile
第三,将“application.js”和“application.css”放入布局application.html.erb中

<meta name="viewport" content="width=device-width, initial-scale=1">
<%= javascript_include_tag "application" %>
<%= stylesheet_link_tag    "application" %>
<%= csrf_meta_tags %>

第四,不要忘记添加“meta name~~~~”行以使其正常工作

<meta content="width=device-width, minimum-scale=1, maximum-scale=1" name="viewport">

还要正确使用jQuery移动属性,如页面中的“data role=“page”。
其他人建议使用诸如“jquery mobile rails”或类似的gem,但我不会这样做。

此gem类似,也可能有用。谢谢-如果有机会,我一定会尝试一下。链接不再有效。这比使用jquery mobile rails gem更简单、更神秘。非常感谢。
<meta content="width=device-width, minimum-scale=1, maximum-scale=1" name="viewport">