Mobile-friendly Anything Slider Plugin - LC-Micro-Slider
| File Size: | 4.96 MB |
|---|---|
| Views Total: | 5982 |
| Last Update: | |
| Publish Date: | |
| Official Website: | Go to website |
| License: | MIT |
LC-Micro-Slider is a simple, flexible, customizable slider plugin that allows to slide through any web content with custom controls, animations, and touch events support.
Key features:
- Fully responsive and mobile-friendly
- 5 built-in animations.
- Content loading indicator.
- Autoplay with pause on hover.
- Infinite carousel mode.
- Lots of options, methods and events.
Table Of Contents:
How to use it (jQuery Version):
1. Put the LC-Micro-Slider plugin's JavaScript and CSS files into your webpage which has jQuery library loaded.
<script src="/path/to/cdn/jquery.min.js"></script> <script src="/path/to/js/lc-micro-slider.js"></script> <link rel="stylesheet" href="/path/to/css/lc-micro-slider.css" />
2. Load the jQuery TouchSwipe plugin to provide the touch gestures support.
<script src="jquery.touchSwipe.min.js"></script>
3. Add your own web content to the slider following the markup structure like this:
<div id="slide_wrap">
<ul style="display: none;">
<li lcms_img="1.jpg">test 1</li>
<li class="lcms_contents_fullheight lcms_nopadding">
<iframe style="height: 100%; width: 100%;" src="//player.vimeo.com/video/40291524?rel=0&autoplay=1" frameborder="0" allowfullscreen></iframe>
</li>
<li lcms_img="2.jpg"></li>
<li lcms_img="3.jpg">test 3</li>
</ul>
</div>
4. Initialize the slider with default settings.
$('#slide_wrap').lc_micro_slider();
5. Config the slider whatever you like:
$('#slide_wrap').lc_micro_slider({
// slide - fade - fadeslide - zoom-in - zoom-out
slide_fx : 'fadeslide',
// shows navigation arrows
nav_arrows : true,
// shows navigation dots
nav_dots : true,
// shows slideshow commands (play/pause)
slideshow_cmd : true,
// non-stop carousel
carousel : true,
// enable touch navigation (requires jquery.touchSwipe.js)
touchswipe : true,
// starts the slideshow
autoplay : false,
// animation timing in millisecods / 1000 = 1sec
animation_time : 700,
// interval time of the slideshow in milliseconds / 1000 = 1sec
slideshow_time : 5000,
// pause and restart the autoplay on box hover
pause_on_hover : true,
// loading animation
loader_code : '<span class="lcms_loader"></span>'
});
6. API methods.
// goes to next slide
$('#slide_wrap').lcms_paginate('next');
// Starts slideshow
$('#slide_wrap').lcms_start_slideshow();
// Stops slideshow
$('#slide_wrap').lcms_stop_slideshow();
// Destroy slider’s object and data
$('#slide_wrap').lcms_destroy();
7. Events.
// when slider is ready to show first element
$('#slide_wrap').delegate('the-slider-wrap', 'lcms_ready', function() {
// do something
});
// when first slide is shown (and eventual image has been loaded)
$('#slide_wrap').delegate('the-slider-wrap', 'lcms_initial_slide_shown', function(slide_index, slide_object) {
// do something
});
// when slide is shown (and eventual image has been loaded)
$('#slide_wrap').delegate('the-slider-wrap', 'lcms_slide_shown', function(slide_index, slide_object) {
// do something
});
// before changing slide
$('#slide_wrap').delegate('the-slider-wrap', 'lcms_changing_slide', function(new_slide_index, slide_object, old_slide_index) {
// do something
});
// when new slide finished replacing old one
$('#slide_wrap').delegate('the-slider-wrap', 'lcms_new_active_slide', function(new_slide_index, slide_object, old_slide_index) {
// do something
});
// when slideshow starts
$('#slide_wrap').delegate('the-slider-wrap', 'lcms_play_slideshow', function() {
// do something
});
// when slideshow ends
$('#slide_wrap').delegate('the-slider-wrap', 'lcms_stop_slideshow', function() {
// do something
});
How to use it (Vanilla JS Version):
1. Import the LC-Micro-Slider plugin's JavaScript and CSS files into your webpage.
<link rel="stylesheet" href="/path/to/themes/default_theme.css" /> <link rel="stylesheet" href="/path/to/themes/demo_extra_theme.css" /> <script src="/path/to/lc-micro-slider.min.js"></script>
2. Add content to the slider.
<div id="slide_wrap">
<ul style="display: none;">
<li data-img="1.jpg">Image</li>
<li>
<iframe style="height: 100%; width: 100%;" src="https://player.vimeo.com/video/40291524?rel=0" frameborder="0" allowfullscreen></iframe>
</li>
<li>
<video controls autoplay muted>
<source src="1.mp4" type="video/mp4">
</video>
</li>
</ul>
</div>
3. Initialize the plugin and done.
new lc_micro_slider('#slide_wrap', {
// options here
});
4. Available options to customize the slider..
new lc_micro_slider('#slide_wrap', {
// slide - fade - fadeslide - zoom-in - zoom-out
slide_fx: 'fadeslide',
// easing: ease - linear - ease-in (etc)
slide_easing: 'ease',
// shows navigation arrows
nav_arrows: true,
// shows navigation dots
nav_dots: true,
// shows slideshow commands (play/pause)
slideshow_cmd: true,
// non-stop carousel
carousel: true,
// enable touch navigation
touchswipe: true,
// starts the slideshow
autoplay: false,
// animation timing in millisecods / 1000 = 1sec
animation_time: 700,
// interval time of the slideshow in milliseconds / 1000 = 1sec
slideshow_time: 5000,
// pause and restart the autoplay on box hover
pause_on_hover: true,
// whether to pause slideshow on HTML video play
pause_on_video_play: false,
// extra HTML code to be injected in the slider to add further commands
extra_cmd_code: '',
// loading animation
loader_code: '<span class="lcms_loader"></span>',
// additional classes attached to the slider wrapper
addit_classes: [],
});
5. API methods.
// start the slider lcms_play(target_el); // stop the slider lcms_stop(target_el); // go to a specific slide lcms_slide(target_el, slide_index);
6. Events.
$el.addEventListener('lcms_ready', (e) => {
// do something
});
$el.addEventListener('lcms_slide_shown', (e) => {
// e.detail.slide_index - (int) slide index
// e.detail.slide_data - (object) slide data
});
$el.addEventListener('lcms_changing_slide', (e) => {
// e.detail.new_index - (int) incoming slide index
// e.detail.slide_data - (object) incoming slide data
// e.detail.curr_index - (int) current (to be removed) slide index
});
$el.addEventListener('lcms_new_active_slide', (e) => {
// e.detail.new_index - (int) new slide index
// e.detail.slide_data - (object) new slide data
});
$el.addEventListener('lcms_play_slideshow', (e) => {
// do something
});
$el.addEventListener('lcms_stop_slideshow', (e) => {
// do something
});
Changelog:
v2.2.0 (2025-07-03)
- improved HTML structure accessibility
- improved disabled buttons management
v2.1.2 (2024-09-29)
- improved CSS transitions code
- fixed slide images cache usage
v2.1.1 (2023-08-29)
- added: srcset support
- fixed: CSS animation glitch on animation's end
- minor code refactoring
- fixed: webkit issues with srcset decoding
v2.0.2 (2021-05-13)
- fixed: swipe navigation on nav dots
- added: lcms_first_populated event
v2.0.1 (2021-04-28)
- Rewritten using Vanilla JS
2017-11-04
- v1.3.1
This awesome jQuery plugin is developed by LCweb-ita. For more Advanced Usages, please check the demo page or visit the official website.











