jquery image switch plugin

  • 2020-05-17 04:44:25
  • OfStack


/**
 * Image switch plug-in
 * Dependence jquery-1.7.2.min.js
 **/
(function ($) {
  // Call way $('#silder').imgSilder({s_width:564, s_height:293, is_showTit:true, s_times:3000,css_link:'css/style.css'});  The container must be added id silder_list or class silder_list
  /* Refer to the structure
    <div class="silder" id="silder">
        <ul class="silder_list" id="silder_list">
            <li>
                <img src="css/img/1.jpg" border="0" alt=" Comrade liu qi visits Beijing volunteer home ">
            </li>
            <li>
                <img src="css/img/2.jpg" border="0" alt=" Comrade liu qi and volunteers ">
            </li>
            <li>
                <img src="css/img/3.jpg" border="0" alt=" Comrade liu qi went to the people's hospital of Peking University for investigation ">
            </li>
            <li>
                <img src="css/img/4.jpg" border="0" alt="2013 China volunteer service international exchange conference held in Beijing ">
            </li>                   
        </ul>
    </div>
  */
  $.fn.silderDefaults = { // The default parameters
    s_width:500, // Width of the container
    s_height:500, // Height of the container
    is_showTit:true, // Whether to display image title false : Don't show, true : According to
    s_times:3000, // Set the scrolling time
    css_link:'css/style.css'
  };
  $.extendSilder = function (obj,opt) { //obj Element object, opt Parameter object
    var g = {  // Public methods, Externally callable
      // Initialize the
        init: function () {
            var wh ={width:opt.s_width,height:opt.s_height};
            var pagesize=0; // The page number
            var silderList = $('#silder_list',g.obj);
            var silderList_li = $('#silder_list li',g.obj);
            g.LoadCSS(opt.css_link); // Style file import
            g.obj.css(wh); silderList.css(wh); silderList_li.find('img').css(wh); // Set the width and height properties
            var currHtml = ""; // Add play page number And text description
            if(opt.is_showTit){ // Determines whether to display the title
                currHtml += "<div class='silder_desc' id='silder_desc'></div>";
            }
            img_size = silderList_li.size() ;// Number of images
            currHtml += "<ul class='silder_page' id='silder_page'>";// Pagination code injection
            for(var i=0; i < img_size; i++){
                currHtml += "<li>"+ parseInt((1 + i),10) +"</li>";
            }
            currHtml +="</ul>";
            silderList_li.eq(0).show().siblings().hide(); // Initializes to hide other images
            g.obj.append(currHtml);// Injection pagination
            var silderPage = $('#silder_page',g.obj);
            var silderPage_li =$('#silder_page li',g.obj);
            silderPage_li.eq(0).addClass('current');
            if(opt.is_showTit){ // Initializes the picture description
                $('#silder_desc').text(silderList_li.eq(0).find('img').attr('alt'));
            }
            silderPage_li.on('click',function(){
                pagesize = $(this).index();
                silderList_li.eq(pagesize).fadeIn(1000).siblings().fadeOut(100);
                $(this).addClass('current').siblings().removeClass('current');
                if(opt.is_showTit){
                    $('#silder_desc').text(silderList_li.eq(pagesize).find('img').attr('alt'));
                }
            });
            var t;
            silderList.hover(function(){window.clearInterval(t); return;},function(){ t = window.setInterval(function(){
                if(pagesize < img_size && pagesize >= 0)
                {
                    silderList_li.eq(pagesize).fadeIn(1000).siblings().fadeOut(100);
                    silderPage_li.eq(pagesize).addClass('current').siblings().removeClass('current');
                    if(opt.is_showTit){
                        $('#silder_desc').text(silderList_li.eq(pagesize).find('img').attr('alt'));
                    }
                    pagesize++;
                    if(pagesize >= img_size){
                        pagesize = 0;
                    }
                }
            },opt.s_times);}).trigger("mouseout"); // When the suspension Stop auto animation ,trigger Takes the default trigger
        },
          LoadCSS:function(url){ // new css
            var s = document.createElement("LINK");
                s.rel = "stylesheet";
                s.type = "text/css";
                s.href = url;
                document.getElementsByTagName("HEAD")[0].appendChild(s);
          }
    };
    g.obj = $(obj);
    g.init();
    return g;
  }
  $.fn.imgSilder = function (options) {
    if (this.length == 0) return; // Determine if the object exists
    this.each(function () {
      if (this.usedSilder) return;
      var opt = $.extend({}, $.fn.silderDefaults, options); // Merges assigned parameters
      this.usedSilder = $.extendSilder(this, opt);
    });
  }
})(jQuery);

That's all the code I'm going to share with you in this article. I hope you enjoy it


Related articles: