Javascript 如何访问jquery函数?
我有以下jquery文件。。。 如何在内联脚本中或在任何需要的事件上直接访问$navPrev和$navNext函数。例如:Javascript 如何访问jquery函数?,javascript,jquery,swipe,Javascript,Jquery,Swipe,我有以下jquery文件。。。 如何在内联脚本中或在任何需要的事件上直接访问$navPrev和$navNext函数。例如: $("a").swipe( { //Generic swipe handler for all directions swipe:function(event, direction, distance, duration, fingerCount) { // My code here to move next or
$("a").swipe( {
//Generic swipe handler for all directions
swipe:function(event, direction, distance, duration, fingerCount) {
// My code here to move next or previous based on swipe action.
);
},
});
我基本上是想添加jquery滑动功能来滚动滑块。为此,我需要能够直接访问下一个和上一个函数
(function( $, undefined ) {
// Gallery object.
$.Gallery = function( options, element ) {
this.$el = $( element );
this._init( options );
};
$.Gallery.defaults = {
current : 0, // index of current item
autoplay : false,// slideshow on / off
interval : 2000 // time between transitions
};
$.Gallery.prototype = {
_init : function( options ) {
this.options = $.extend( true, {}, $.Gallery.defaults, options );
// support for 3d / 2d transforms and transitions
this.support3d = Modernizr.csstransforms3d;
this.support2d = Modernizr.csstransforms;
this.supportTrans = Modernizr.csstransitions;
this.$wrapper = this.$el.find('.dg-wrapper');
this.$items = this.$wrapper.children();
this.itemsCount = this.$items.length;
this.$nav = this.$el.find('nav');
this.$navPrev = this.$nav.find('.dg-prev');
this.$navNext = this.$nav.find('.dg-next');
// minimum of 3 items
if( this.itemsCount < 3 ) {
this.$nav.remove();
return false;
}
this.current = this.options.current;
this.isAnim = false;
this.$items.css({
'opacity' : 0,
'visibility': 'hidden'
});
this._validate();
this._layout();
// load the events
this._loadEvents();
// slideshow
if( this.options.autoplay ) {
this._startSlideshow();
}
},
_validate : function() {
if( this.options.current < 0 || this.options.current > this.itemsCount - 1 ) {
this.current = 0;
}
},
_layout : function() {
// current, left and right items
this._setItems();
// current item is not changed
// left and right one are rotated and translated
var leftCSS, rightCSS, currentCSS;
if( this.support3d && this.supportTrans ) {
leftCSS = {
'-webkit-transform' : 'translateX(-350px) translateZ(-200px) rotateY(45deg)',
'-moz-transform' : 'translateX(-350px) translateZ(-200px) rotateY(45deg)',
'-o-transform' : 'translateX(-350px) translateZ(-200px) rotateY(45deg)',
'-ms-transform' : 'translateX(-350px) translateZ(-200px) rotateY(45deg)',
'transform' : 'translateX(-350px) translateZ(-200px) rotateY(45deg)'
};
rightCSS = {
'-webkit-transform' : 'translateX(350px) translateZ(-200px) rotateY(-45deg)',
'-moz-transform' : 'translateX(350px) translateZ(-200px) rotateY(-45deg)',
'-o-transform' : 'translateX(350px) translateZ(-200px) rotateY(-45deg)',
'-ms-transform' : 'translateX(350px) translateZ(-200px) rotateY(-45deg)',
'transform' : 'translateX(350px) translateZ(-200px) rotateY(-45deg)'
};
leftCSS.opacity = 1;
leftCSS.visibility = 'visible';
rightCSS.opacity = 1;
rightCSS.visibility = 'visible';
}
else if( this.support2d && this.supportTrans ) {
leftCSS = {
'-webkit-transform' : 'translate(-350px) scale(0.8)',
'-moz-transform' : 'translate(-350px) scale(0.8)',
'-o-transform' : 'translate(-350px) scale(0.8)',
'-ms-transform' : 'translate(-350px) scale(0.8)',
'transform' : 'translate(-350px) scale(0.8)'
};
rightCSS = {
'-webkit-transform' : 'translate(350px) scale(0.8)',
'-moz-transform' : 'translate(350px) scale(0.8)',
'-o-transform' : 'translate(350px) scale(0.8)',
'-ms-transform' : 'translate(350px) scale(0.8)',
'transform' : 'translate(350px) scale(0.8)'
};
currentCSS = {
'z-index' : 999
};
leftCSS.opacity = 1;
leftCSS.visibility = 'visible';
rightCSS.opacity = 1;
rightCSS.visibility = 'visible';
}
this.$leftItm.css( leftCSS || {} );
this.$rightItm.css( rightCSS || {} );
this.$currentItm.css( currentCSS || {} ).css({
'opacity' : 1,
'visibility': 'visible'
}).addClass('dg-center');
},
_setItems : function() {
this.$items.removeClass('dg-center');
this.$currentItm = this.$items.eq( this.current );
this.$leftItm = ( this.current === 0 ) ? this.$items.eq( this.itemsCount - 1 ) : this.$items.eq( this.current - 1 );
this.$rightItm = ( this.current === this.itemsCount - 1 ) ? this.$items.eq( 0 ) : this.$items.eq( this.current + 1 );
if( !this.support3d && this.support2d && this.supportTrans ) {
this.$items.css( 'z-index', 1 );
this.$currentItm.css( 'z-index', 999 );
}
// next & previous items
if( this.itemsCount > 3 ) {
// next item
this.$nextItm = ( this.$rightItm.index() === this.itemsCount - 1 ) ? this.$items.eq( 0 ) : this.$rightItm.next();
this.$nextItm.css( this._getCoordinates('outright') );
// previous item
this.$prevItm = ( this.$leftItm.index() === 0 ) ? this.$items.eq( this.itemsCount - 1 ) : this.$leftItm.prev();
this.$prevItm.css( this._getCoordinates('outleft') );
}
},
_loadEvents : function() {
var _self = this;
this.$navPrev.on( 'click.gallery', function( event ) {
if( _self.options.autoplay ) {
clearTimeout( _self.slideshow );
_self.options.autoplay = false;
}
_self._navigate('prev');
return false;
});
this.$navNext.on( 'click.gallery', function( event ) {
if( _self.options.autoplay ) {
clearTimeout( _self.slideshow );
_self.options.autoplay = false;
}
_self._navigate('next');
return false;
});
this.$wrapper.on( 'webkitTransitionEnd.gallery transitionend.gallery OTransitionEnd.gallery', function( event ) {
_self.$currentItm.addClass('dg-center');
_self.$items.removeClass('dg-transition');
_self.isAnim = false;
});
},
_getCoordinates : function( position ) {
if( this.support3d && this.supportTrans ) {
switch( position ) {
case 'outleft':
return {
'-webkit-transform' : 'translateX(-450px) translateZ(-300px) rotateY(45deg)',
'-moz-transform' : 'translateX(-450px) translateZ(-300px) rotateY(45deg)',
'-o-transform' : 'translateX(-450px) translateZ(-300px) rotateY(45deg)',
'-ms-transform' : 'translateX(-450px) translateZ(-300px) rotateY(45deg)',
'transform' : 'translateX(-450px) translateZ(-300px) rotateY(45deg)',
'opacity' : 0,
'visibility' : 'hidden'
};
break;
case 'outright':
return {
'-webkit-transform' : 'translateX(450px) translateZ(-300px) rotateY(-45deg)',
'-moz-transform' : 'translateX(450px) translateZ(-300px) rotateY(-45deg)',
'-o-transform' : 'translateX(450px) translateZ(-300px) rotateY(-45deg)',
'-ms-transform' : 'translateX(450px) translateZ(-300px) rotateY(-45deg)',
'transform' : 'translateX(450px) translateZ(-300px) rotateY(-45deg)',
'opacity' : 0,
'visibility' : 'hidden'
};
break;
case 'left':
return {
'-webkit-transform' : 'translateX(-350px) translateZ(-200px) rotateY(45deg)',
'-moz-transform' : 'translateX(-350px) translateZ(-200px) rotateY(45deg)',
'-o-transform' : 'translateX(-350px) translateZ(-200px) rotateY(45deg)',
'-ms-transform' : 'translateX(-350px) translateZ(-200px) rotateY(45deg)',
'transform' : 'translateX(-350px) translateZ(-200px) rotateY(45deg)',
'opacity' : 1,
'visibility' : 'visible'
};
break;
case 'right':
return {
'-webkit-transform' : 'translateX(350px) translateZ(-200px) rotateY(-45deg)',
'-moz-transform' : 'translateX(350px) translateZ(-200px) rotateY(-45deg)',
'-o-transform' : 'translateX(350px) translateZ(-200px) rotateY(-45deg)',
'-ms-transform' : 'translateX(350px) translateZ(-200px) rotateY(-45deg)',
'transform' : 'translateX(350px) translateZ(-200px) rotateY(-45deg)',
'opacity' : 1,
'visibility' : 'visible'
};
break;
case 'center':
return {
'-webkit-transform' : 'translateX(0px) translateZ(0px) rotateY(0deg)',
'-moz-transform' : 'translateX(0px) translateZ(0px) rotateY(0deg)',
'-o-transform' : 'translateX(0px) translateZ(0px) rotateY(0deg)',
'-ms-transform' : 'translateX(0px) translateZ(0px) rotateY(0deg)',
'transform' : 'translateX(0px) translateZ(0px) rotateY(0deg)',
'opacity' : 1,
'visibility' : 'visible'
};
break;
};
}
else if( this.support2d && this.supportTrans ) {
switch( position ) {
case 'outleft':
return {
'-webkit-transform' : 'translate(-450px) scale(0.7)',
'-moz-transform' : 'translate(-450px) scale(0.7)',
'-o-transform' : 'translate(-450px) scale(0.7)',
'-ms-transform' : 'translate(-450px) scale(0.7)',
'transform' : 'translate(-450px) scale(0.7)',
'opacity' : 0,
'visibility' : 'hidden'
};
break;
case 'outright':
return {
'-webkit-transform' : 'translate(450px) scale(0.7)',
'-moz-transform' : 'translate(450px) scale(0.7)',
'-o-transform' : 'translate(450px) scale(0.7)',
'-ms-transform' : 'translate(450px) scale(0.7)',
'transform' : 'translate(450px) scale(0.7)',
'opacity' : 0,
'visibility' : 'hidden'
};
break;
case 'left':
return {
'-webkit-transform' : 'translate(-350px) scale(0.8)',
'-moz-transform' : 'translate(-350px) scale(0.8)',
'-o-transform' : 'translate(-350px) scale(0.8)',
'-ms-transform' : 'translate(-350px) scale(0.8)',
'transform' : 'translate(-350px) scale(0.8)',
'opacity' : 1,
'visibility' : 'visible'
};
break;
case 'right':
return {
'-webkit-transform' : 'translate(350px) scale(0.8)',
'-moz-transform' : 'translate(350px) scale(0.8)',
'-o-transform' : 'translate(350px) scale(0.8)',
'-ms-transform' : 'translate(350px) scale(0.8)',
'transform' : 'translate(350px) scale(0.8)',
'opacity' : 1,
'visibility' : 'visible'
};
break;
case 'center':
return {
'-webkit-transform' : 'translate(0px) scale(1)',
'-moz-transform' : 'translate(0px) scale(1)',
'-o-transform' : 'translate(0px) scale(1)',
'-ms-transform' : 'translate(0px) scale(1)',
'transform' : 'translate(0px) scale(1)',
'opacity' : 1,
'visibility' : 'visible'
};
break;
};
}
else {
switch( position ) {
case 'outleft' :
case 'outright' :
case 'left' :
case 'right' :
return {
'opacity' : 0,
'visibility' : 'hidden'
};
break;
case 'center' :
return {
'opacity' : 1,
'visibility' : 'visible'
};
break;
};
}
},
_navigate : function( dir ) {
if( this.supportTrans && this.isAnim )
return false;
this.isAnim = true;
switch( dir ) {
case 'next' :
this.current = this.$rightItm.index();
// current item moves left
this.$currentItm.addClass('dg-transition').css( this._getCoordinates('left') );
// right item moves to the center
this.$rightItm.addClass('dg-transition').css( this._getCoordinates('center') );
// next item moves to the right
if( this.$nextItm ) {
// left item moves out
this.$leftItm.addClass('dg-transition').css( this._getCoordinates('outleft') );
this.$nextItm.addClass('dg-transition').css( this._getCoordinates('right') );
}
else {
// left item moves right
this.$leftItm.addClass('dg-transition').css( this._getCoordinates('right') );
}
break;
case 'prev' :
this.current = this.$leftItm.index();
// current item moves right
this.$currentItm.addClass('dg-transition').css( this._getCoordinates('right') );
// left item moves to the center
this.$leftItm.addClass('dg-transition').css( this._getCoordinates('center') );
// prev item moves to the left
if( this.$prevItm ) {
// right item moves out
this.$rightItm.addClass('dg-transition').css( this._getCoordinates('outright') );
this.$prevItm.addClass('dg-transition').css( this._getCoordinates('left') );
}
else {
// right item moves left
this.$rightItm.addClass('dg-transition').css( this._getCoordinates('left') );
}
break;
};
this._setItems();
if( !this.supportTrans )
this.$currentItm.addClass('dg-center');
},
_startSlideshow : function() {
var _self = this;
this.slideshow = setTimeout( function() {
_self._navigate( 'next' );
if( _self.options.autoplay ) {
_self._startSlideshow();
}
}, this.options.interval );
},
destroy : function() {
this.$navPrev.off('.gallery');
this.$navNext.off('.gallery');
this.$wrapper.off('.gallery');
}
};
var logError = function( message ) {
if ( this.console ) {
console.error( message );
}
};
$.fn.gallery = function( options ) {
if ( typeof options === 'string' ) {
var args = Array.prototype.slice.call( arguments, 1 );
this.each(function() {
var instance = $.data( this, 'gallery' );
if ( !instance ) {
logError( "cannot call methods on gallery prior to initialization; " +
"attempted to call method '" + options + "'" );
return;
}
if ( !$.isFunction( instance[options] ) || options.charAt(0) === "_" ) {
logError( "no such method '" + options + "' for gallery instance" );
return;
}
instance[ options ].apply( instance, args );
});
}
else {
this.each(function() {
var instance = $.data( this, 'gallery' );
if ( !instance ) {
$.data( this, 'gallery', new $.Gallery( options, this ) );
}
});
}
return this;
};
})( jQuery );
(函数($,未定义){
//图库对象。
$.Gallery=功能(选项,元素){
该.$el=$(元素);
这是._init(选项);
};
$.Gallery.defaults={
当前:0,//当前项的索引
自动播放:false,//打开/关闭幻灯片放映
时间间隔:2000//两次转换之间的时间
};
$.Gallery.prototype={
_初始化:函数(选项){
this.options=$.extend(true,{},$.Gallery.defaults,options);
//支持三维/二维变换和变换
this.support3d=modernizer.cstransform3d;
this.support2d=modernizer.cstransforms;
this.supportTrans=现代化cstransion;
this.$wrapper=this.$el.find('.dg wrapper');
this.$items=this.$wrapper.children();
this.itemsCount=此.$items.length;
this.$nav=this.$el.find('nav');
this.$navPrev=this.$nav.find('.dg prev');
this.$navNext=this.$nav.find('.dg next');
//最少3项
如果(此项小于3){
此.$nav.remove();
返回false;
}
this.current=this.options.current;
this.isAnim=false;
这是$items.css({
“不透明度”:0,
“可见性”:“隐藏”
});
这个;
这个;
//加载事件
这是;
//幻灯片放映
如果(this.options.autoplay){
这个。_startSlideshow();
}
},
_验证:函数(){
if(this.options.current<0 | | this.options.current>this.itemsCount-1){
该电流=0;
}
},
_布局:函数(){
//当前、左侧和右侧项目
这是。_setItems();
//当前项未更改
//左右一个旋转和平移
var leftCSS、rightss、currentCSS;
if(this.support3d&&this.supportTrans){
leftCSS={
“-webkit变换”:“translateX(-350px)translateZ(-200px)rotateY(45度)”,
“-moz变换”:“translateX(-350px)translateZ(-200px)rotateY(45度)”,
“-o-变换”:“translateX(-350px)translateZ(-200px)rotateY(45度)”,
“-ms变换”:“translateX(-350px)translateZ(-200px)rotateY(45度)”,
“transform”:“translateX(-350px)translateZ(-200px)rotateY(45度)”
};
rightCSS={
“-webkit变换”:“translateX(350px)translateZ(-200px)rotateY(-45度)”,
“-moz变换”:“translateX(350px)translateZ(-200px)rotateY(-45度)”,
“-o变换”:“translateX(350px)translateZ(-200px)rotateY(-45度)”,
“-ms变换”:“translateX(350px)translateZ(-200px)rotateY(-45度)”,
“transform”:“translateX(350px)translateZ(-200px)rotateY(-45度)”
};
leftCSS.opacity=1;
leftCSS.visibility='visible';
rightCSS.opacity=1;
rightCSS.visibility='visible';
}
else if(this.support2d&&this.supportTrans){
leftCSS={
“-webkit转换”:“转换(-350px)比例(0.8)”,
“-moz变换”:“平移(-350px)比例(0.8)”,
“-o变换”:“平移(-350px)比例(0.8)”,
“-ms转换”:“转换(-350px)比例(0.8)”,
“转换”:“转换(-350px)比例(0.8)”
};
rightCSS={
“-webkit转换”:“转换(350px)比例(0.8)”,
“-moz变换”:“平移(350px)比例(0.8)”,
“-o变换”:“平移(350px)比例(0.8)”,
“-ms转换”:“转换(350px)比例(0.8)”,
“转换”:“转换(350px)比例(0.8)”
};
当前CSS={
“z索引”:999
};
leftCSS.opacity=1;
leftCSS.visibility='visible';
rightCSS.opacity=1;
rightCSS.visibility='visible';
}
这个.leftItm.css(leftCSS | |{});
这个.$righitm.css(rightCSS | |{});
这个.currentItm.css(currentCSS | |{}).css({
“不透明度”:1,
“可见性”:“可见”
}).addClass(“dg-center”);
},
_setItems:function(){
此.$items.removeClass('dg-center');
this.$currentItm=this.$items.eq(this.current);
this.$leftItm=(this.current==0)?this.$items.eq(this.itemscont-1):this.$items.eq(this.current-1);
this.$rightItm=(this.current==this.itemsCount-1)?this.$items.eq(0):this.$items.eq(this.current+1);
如果(!this.support3d&&this.support2d&&this.supportTrans){
这个.$items.css('z-index',1);
这是.currentItm.css('z-index',999);
}
//下一项和上一项
如果(this.itemsunt>3){
//下一项
this.$nextItm=(this.$righitm.index()==this.itemsCount-1)?this.$items.eq(0):this.$righitm.next();
this.$nextim.css(this._getCoordinates('outline'));
//上一项
this.$prevItm=(this.$leftItm.index
<div class="container">
<!-- Codrops top bar -->
<!--/ Codrops top bar -->
<section id="dg-container" class="dg-container">
<div class="dg-wrapper">
<a href="#"><img src="album1.jpg" alt="image05"></a>
<a href="#"><img src="album2.jpg" alt="image06"></a>
<a href="#"><img src="album3.jpg" alt="image07"></a>
</div>
<nav>
<span class="dg-prev"><</span>
<span class="dg-next">></span>
</nav>
</section>
</div>
<script type="text/javascript">
$(function() {
$me=$('#dg-container').gallery({
autoplay : true
});
// console.log($me);
});
</script>
<span class="dg-prev"><</span>
<span class="dg-next">></span>
$(".dg-prev")
$(".dg-next")
$(".dg-prev").click();