RefineryCMS nivo 滑块不起作用需要 jquery

RefineryCMS nivo slider not working with require jquery

本文关键字:jquery 不起作用 nivo RefineryCMS      更新时间:2023-09-26

我正在运行RefineryCMS 3.0.0,并在主页上为幻灯片添加了nivo gem。

我已经将要求行添加到我的应用程序.js页面中,如下所示;

//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require nivo
//= require_tree .

这是我的主页

<body>
    <div class="logo_white">
        <%= image_tag("logo-white.png", class:"logo-white") %>
    </div>
    <% main_slideshow = Refinery::ImageSlideshows::ImageSlideshow.includes(:image_slides).find_by_title('frontpage') %>
    <div id="wrapper">
        <% if main_slideshow %>
            <div class="slider-wrapper">
                <div id="slider">
                    <% main_slideshow.image_slides.each do |image_slide| %>
                        <%= link_to image_slide.link_url do %>
                            <%= image_tag image_slide.image.url, :alt => image_slide.title, :title => image_slide.caption %>
                        <% end %>
                    <% end %>
                </div>
            </div>
        <% else %>
            Please create the 'frontpage' slideshow in the admin section
        <% end %>
    </div>
    <script src="/assets/jquery.js" type="text/javascript"></script>
    <script type="text/javascript">
     var ready;
     ready = function(){
         $('#slider').nivoSlider({
             <%= raw main_slideshow.js_config if main_slideshow %>
         });
     };
     $(document).ready(ready);
     $(document).on('page:load', ready);
    </script>
</body>

这目前有效,但我必须在该行中再次包含 jquery 库;

    <script src="/assets/jquery.js" type="text/javascript"></script>

如果我删除此行,幻灯片将不起作用。有没有更好的方法

也许 finery 中包含的 jquery 不支持 $(something),而是尝试 jQuery(something)。