Nivo Slider with Ruby on Rails
Nivo Slider is one of the most popular JavaScript slider. This gem provides integration with Ruby on Rails.
Installation
First, add this to your Gemfile:
gem 'nivo-rails'
# If you are running Rails 5.1+, jQuery might not be a dependency
# of your project but it's still needed for Nivo Slider to run.
gem 'jquery-rails'
Then run the bundle
command to install the gem.
Usage
This gem provides files required to setup correctly Nivo Slider on your site. It requires a few lines of code to setup a slideshow. First, make sure to import the CSS file:
/* Inside a normal application.css file
*= require nivo
*/
// Or if you are using Sass/SCSS
@import "nivo";
And then import the JavaScript file as well:
//= require nivo
You can now easily add slideshows in your web pages. To avoid writing all the
boilerplate needed by Nivo Slider, you can rely on the nivo_slider
tag:
<%= nivo_slider id: "slider" do %>
<%= image_tag "foo.png", title: "A very nice photo!" %>
<%= image_tag "bar.png" %>
<% end %>
This helper behaves like Action View's content_tag
helper apart from the fact that
it doesn't escape the provided content by default. It also sets the div's id
to "slider"
by default and adds a nivoSlider
class as well.
If you want to set a theme, you should wrap the nivo_slider
call with a div
element with the proper class:
<div class="theme-dark">
<%= nivo_slider id: "slider" do %>
<!-- ... -->
<% end %>
</div>
Make sure then to initialize Nivo Slider on the given element:
$(window).on('load', function() {
$('#slider').nivoSlider();
});
// Or if you are using Turbolinks
$(document).on('turbolinks:load', function () {
$('#slider').nivoSlider();
});
Enjoy!
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request
License
Nivo Slider is available under
the terms of the MIT license. This project is also available under the MIT license.
Please see the LICENSE
file for more information.