【问题标题】:Javascript not loading -rails - spree commerceJavascript未加载-rails-狂欢商务
【发布时间】:2014-01-06 06:36:19
【问题描述】:

我正在搞乱 Spree Commerce 试图学习它。我下载了一个 HTML 主题 (http://themeforest.net/item/convertible-responsive-html5-template/full_screen_preview/6289591),我只是想把它作为网站的前端。不是实体店。

商店安装在/store,而这个模板将是静态页面。

我不确定是不是因为模板、rails 4 turbolinks、狂欢商务以及它如何弄乱了 rails 应用程序的设置。在过去的 3 天里,我一直在尝试所有方法,我已经查看/尝试了我能找到的所有修复程序,但它仍然无法正常工作。

以下是主页滑块部分的代码。它与上面的主题实际上是相同的。这是一个弹性滑块。这是js(我在我的rails应用程序中有相同的文件:app/assets/javascripts

https://github.com/werein/flexslider-rails/blob/master/vendor/assets/javascripts/jquery.flexslider.js

主页滑块:

    <!-- home 
        ================================================== -->
    <div class="section">
        <div id="home-section">
            <div class="home-box">
                <%= image_tag "upload/singlepage-bg.jpg", :class => "background-view"  %>
                <div class="slider-caption">
                    <div class="container">
                        <div class="flexslider">
                             <ul class="slides">
                                <li>
                                    <p class="flex-caption">Convertible <span>is great</span> template</p>
                                </li>
                                <li>
                                    <p class="flex-caption">We are great <span>company</span></p>
                                </li>
                                <li>
                                    <p class="flex-caption">We <span>support</span> you</p>
                                </li>
                            </ul>
                        </div>
                    </div>
                </div>              
            </div>
        </div>
    </div>


    <!-- End home -->

JS文件开头:jquery.flexslider.js

;(function ($) {

  //FlexSlider: Object Instance
  $.flexslider = function(el, options) {
    var slider = $(el),
      vars = $.extend({}, $.flexslider.defaults, options),
      namespace = vars.namespace,
      touch = ("ontouchstart" in window) || window.DocumentTouch && document instanceof     DocumentTouch,
    eventType = (touch) ? "touchend" : "click",
    vertical = vars.direction === "vertical",
    reverse = vars.reverse,
    carousel = (vars.itemWidth > 0),
    fade = vars.animation === "fade",
    asNav = vars.asNavFor !== "",
    methods = {};

【问题讨论】:

  • 您是否包含jquery.flexslider 并激活它?
  • 是的,我尝试使用 gem,我也尝试使用 jquery.turbolinks gem。你是什​​么意思激活它?
  • 来自 gem 的页面:# Activate Flexslider $(".flexslider").flexslider animation: "slide" - 您需要将该功能添加到某些东西。
  • 我有模板中的 JS。这是一个巨大的文件,但就像我刚刚添加到问题中的代码一样开始:(这应该可以正常工作吗?)
  • 在您的 javascripts 中某处添加行 $(".flexslider").flexslider();,或者如果您没有任何此类内容,则创建新行:$(document).ready(function () { $(".flexslider").flexslider();});。你已经添加了这个库,但你并没有在任何地方使用它。

标签: javascript jquery ruby-on-rails flexslider spree


【解决方案1】:

看起来你必须使用 deface 否则它将不起作用。我是从一位在 google helpout 上大吃一惊的 Rails 开发人员那里发现的

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-27
    • 1970-01-01
    相关资源
    最近更新 更多