星海爭霸21全功能兌換碼新手獎勵1、7小時遊戲時間(14天內)解除所有試玩版本限制直到7小時耗盡,如種族、匹配模式、戰役、地圖等詳細資訊(150119更新)4505624695013984483730049
2020-11-30 03:45:43
對於前端開發人員來說,jquery是必需掌據的一門語言技術,而jquery外掛開發又是jquery中的學習難點,雖然網路中jquery外掛已經相當豐富,但是,面對偵錯中出現的各種問題,和外掛的二次擴充套件,顯得尤為的不方便。這是自已開發外掛滿中專案的需求,就顯得非常必要的事。
jquery外掛的標準格式-自呼叫匿名函數
;(function($,window,document,undefined){
})(jQuery,window,document);
使用物件導向的開發外掛
;(function($,window,document,undefined){
var zSlider = function(element,options){
}
zSlider.prototype = {
init:function(){
}
}
$.fn.zSlider = function(options){
var obj = new zSlider(this,options);
obj.init();
return this;//返回jQuery選擇器的集合,以便鏈式呼叫
}
})(jQuery,window,document);
定義外掛引數
this.$element = element;
this.options = $.extend(true,{
animate: 'roll',
direction : 'horizontal',//捲動方向,vertical重直捲動,horizontal水平捲動
event:"mouseover",
duration: 3000,//播放頻率
speed : 500,//捲動速度
auto : true//是否自動播放
},options);
初始化資料
init:function(){
this.index = 0;//開始的索引
//圖片寬度
this.width = $('.'+this.options.pic_class,this.$element).find('img:first').width();
//圖片高度
this.height = $('.'+this.options.pic_class,this.$element).find('img:first').height();
//圖片大包裝盒
this.img_wrop = this.$element.find('.'+this.options.pic_class);
//所有小包裝盒
this.img_box = this.img_wrop.children();
//所有圖片
this.imgs = this.$element.find('.'+this.options.pic_class+' img');
//圖片數量
this.number = this.imgs.length;
//設定slider的為絕對定位
this.$element.css({'position':'relative'});
//設定包裝盒為相對定位
this.img_wrop.css({'position':'absolute',top:'0px',left:'0px'});
//如果為水平捲動,設定大包裝盒的寬度,圖片小包裝盒為左浮動
if(this.options.direction == 'horizontal' && this.options.animate == 'roll'){
this.img_wrop.css({'width':this.width*this.number+'px'});
this.img_box.css({'float':'left'});
}
//生成導航
this.createNav();
//是否自動播放
if(this.options) this.play();
//係結事件,切換圖片
this.bind(this.options.event);
},
編寫生成導航方法
向zSlider的原型中新增生成導航的createNav方法
createNav:function(){
this.$element.append('<div class="nav"></div>');
this.$nav = this.$element.find('.nav');
for(var i =1;i<=this.number;i++){
this.$nav.append('<span>●</span>')
}
this.$nav.css({'position':'absolute',
'z-index':3,'left':'50%',
'bottom':'20px',
'text-align':'center',
'font-size':'0',
'border-radius':'10px',
'background-color':' rgba(255,255,255,0.3)',
'filter': 'alpha(opacity:30)'});
this.$nav.find('span').css({'display':'inline-block',
'font-size':'14px','color':'#fff',
'text-decoration':'none',
'cursor':'pointer',
'margin':'2px'});
this.$nav.find('span:first').addClass('on');
this.$nav.find('.on').css({'color':'orange'});
var nav_margin_left = this.$nav.width()*(-0.5);
//獲取導航margin-left的偏移量,必需先設定好span的大小之後在獲取,否則獲取的將是父素的寬度
this.$nav.css({'margin-left':nav_margin_left+'px'});
}
自動播放方法
play : function(){
var Z = this;//setInterval中的this是指向window物件,所以也要儲存起來,以便在setInterval中使用
if(this.element.timer)clearInterval(this.element.timer);
this.element.timer = setInterval(function(){
Z.index++
if(Z.index >= Z.number){//如果索引大於或者等於圖片總數
Z.index =0;
}
Z.$nav.removeClass('on').css({'color':'#fff'});
Z.$nav.eq(Z.index).addClass('on').css({'color':'orange'});
Z[Z.options.animate]();//圖片動畫
},this.options.duration);
},
到此,幻燈片外掛就大功告成,是不是很簡單。如果你要使用淡入淡出動畫,只需在zSlider的原型上新增一個淡入淡出的動畫即可。
相關文章
星海爭霸21全功能兌換碼新手獎勵1、7小時遊戲時間(14天內)解除所有試玩版本限制直到7小時耗盡,如種族、匹配模式、戰役、地圖等詳細資訊(150119更新)4505624695013984483730049
2020-11-30 03:45:43
我們經常會玩決勝時刻戰區遊戲,但是有很多朋友不知道決勝時刻戰區國際服註冊方法,下面就詳細說下決勝時刻戰區國際服註冊方法。1首先我們開啟自己電腦中的瀏覽器,比如360瀏覽器
2020-11-29 16:08:59
決勝時刻黑色行動4的應用獲取的方法。1準備好網路的網速,開啟瀏覽器的頁面。 2決勝時刻黑色行動4將其輸入到搜尋頁中,點選搜尋。 3選擇圖中展示的決勝時刻黑色行動4中文版網頁
2020-11-29 16:06:30
決勝時刻是一個很好玩的遊戲,但是安裝過程比較困難,下面小編和你分享一下經驗! 1一般有很多個壓縮檔案的那種,任意解壓一個壓縮包之後會生成一個映象用虛擬光碟機載入,之後按用光
2020-11-29 10:07:32
小編教你決勝時刻9BO2.怎麼安裝,希望你的生活多姿多彩~ 1首先,你買的基本可以確定,是盜版,或者說所謂的偽正版——同學,多去steam吧或者戰地3吧看一看,會提高你對盜版/偽正版的鑑
2020-11-29 05:49:58
目前很多決勝時刻的玩家都在找版本10的中文版,其實現在正版的當中還沒有中文,退而求其次吧,小編這裡分享一些貼圖大家參考一下 1基礎選單,直接看圖片吧 2基礎選單,直接看圖片吧 3
2020-11-29 05:29:49