【问题标题】:Rails 3 Asset Pipeline and jQuery MobileRails 3 资产管道和 jQuery Mobile
【发布时间】:2013-02-06 11:59:12
【问题描述】:

如果我尝试在资产管道中的任何位置包含从 jQuery Mobile 网站下载的任何 .js.css 文件,我会遇到各种视图渲染问题,从找不到图像到未应用 CSS,再到错误执行 jQuery js 文件。但是,当我使用示例代码时:

<link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css">
<script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>

在我的 Rails 3.2.11 应用程序的标题中,它可以正常工作。

这是为什么?

我尝试通过多种方式将其纳入application.jsapplication.css

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 jquery-mobile asset-pipeline


    【解决方案1】:
    1. 通过相应的资产 gem 将 jquery-railsjquery-mobile 添加到您的 Gemfile。
    2. 从您的 application.js 和 application.css 或您已配置的清单中要求他们的资产。
    3. 不要在布局中包含这样的脚本标签,否则会绕过 Rails 资产管道。

    您的 Gemfile:

    group :assets, :development do
      gem 'jquery-rails'
      gem 'jquery_mobile_rails'
    end
    

    您的资产清单(默认为application.jsapplication.css)应类似于以下说明:https://github.com/tscolari/jquery-mobile-rails#installation

    【讨论】:

      【解决方案2】:

      好的,Vicente 先生的解决方案绝对是最简单的,但它不允许您使用 JQuery Mobile 主题滚动器包含自定义 CSS 主题。我所做的基本上是复制原始 CSS 并将其放入“自定义”css 文件中,该文件又可以根据需要设置提供的主题的样式。不理想,因为您想自己构建自定义主题,但可以。

      【讨论】:

      • 不想刻薄,您应该发表评论而不是新答案。关于自定义文件,您可以通过优化 *= 要求来选择要导入的 CSS 样式表:而不是包含所有这些样式表,而只包含包含核心代码的样式表。看看github.com/tscolari/jquery-mobile-rails/tree/master/vendor/… 看看你的选择。您可以将自定义主题添加到例如app/assets/stylesheets/theme.sass 并从您的主清单中要求它。
      猜你喜欢
      • 1970-01-01
      • 2012-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多