0

我是编程新手,其他人在我之前在此页面上编写了此幻灯片。我正在向 java 添加一些更改,我可能在下面的基于 jQuery 的图像滑块第二个代码中删除或添加了一些内容。截至目前,第一个图像显示有箭头,但似乎幻灯片没有开始,箭头无法移动图像。让我知道您是否可以提供帮助 谢谢

我认为这是主要的 JS 文件

     /* jQuery based image slider
    /* TMSlider 0.3.2 */

    (function($,undefined){

var _TMS=window._TMS=$.fn._TMS=function(_){
        _=_||{}         
        _=$.extend(clone(_TMS),_TMS.presets[_.preset],_)
        _.init.call(_.me=_.holder=this,_)
        return _.me.data({opt:_})
    }

$.extend(_TMS,{
    etal:'<div></div>',
    items:'.items>li',
    pic:'pic',
    mask:'mask',
    paginationCl:'pagination',
    currCl:'current',
    pauseCl:'paused',
    bannerCl:'banner',
    numStatusCl:'numStatus',
    pagNums:true,
    overflow:'hidden',
    show:0,
    changeEv:'click',
    blocksX:1,
    blocksY:1,
    preset:'simpleFade',
    duration:1000,
    easing:'linear',
    way:'lines',
    anim:'fade',
    pagination:false,
    banners:false,
    waitBannerAnimation:true,
    slideshow:false,
    progressBar:false,
    pauseOnHover:false,
    nextBu:false,
    prevBu:false,
    playBu:false,
    preFu:function(){
        var _=this,
            img=$(new Image())
        _.pic=$(_.etal)
            .addClass(_.pic)
            .css({overflow:_.overflow})
            .appendTo(_.me)
        _.mask=$(_.etal)
            .addClass(_.mask)
            .appendTo(_.pic)

        if(_.me.css('position')=='static')
            _.me.css({position:'relative'})
        if(_.me.css('z-index')=='auto')
            _.me.css({zIndex:1})

        _.me.css({overflow:_.overflow})

        if(_.items)
            _.parseImgFu()
        img
            .appendTo(_.me)
            .load(function(){
                _.pic
                    .css({
                        width:'940px', //_.width=img.width()
                        height:_.height=img.height(),
                        background:'url('+_.itms[_.show]+') 0 0 no-repeat'
                    })
                img.remove()
                _.current=_.buff=_.show
            })
            .attr({src:_.itms[_.n=_.show]})
    },
    sliceFu:function(w,h){
        var _=this,
            w=_.blocksX,
            h=_.blocksY,
            eW=parseInt(_.width/w),
            eH=parseInt(_.height/h),
            etal=$(_.etal),
            fW=_.pic.width()-eW*w,
            fH=_.pic.height()-eH*h,
            x,y,
            matrix=_.matrix=[]

        _.mask
            .css({
                position:'absolute',
                width:'100%',
                height:'auto',
                left:0,
                top:0,
                zIndex:1
            })
            .empty()
            .appendTo(_.pic)

        for(y=0;y<h;y++)
            for(x=0;x<w;x++)
                matrix[y]=matrix[y]?matrix[y]:[],
                matrix[y][x]=$(_.etal).clone()
                    .appendTo(_.mask)
                    .css({
                         left:x*eW,
                         top:y*eH,
                         position:'absolute',
                         width:x==w-1?eW+fW:eW,
                         height:y==h-1?eH+fH:eH,
                         backgroundPosition:'-'+x*eW+'px -'+y*eH+'px',
                         display:'none'
                     })
        if(_.maskC){
            _.maskC.remove()
            delete _.maskC
        }
        _.maskC=_.mask.children()           
    },
    changeFu:function(n){
        var _=this
        if(_.bl)
            return false
        if(n==_.n)
            return false
        _.n=n
        _.next=_.itms[n]
        _.direction=n-_.buff
        if(_.direction==_.itms.length-1)
            _.direction=-1
        if(_.direction==-1*_.itms.length+1)
            _.direction=2
        _.current=_.buff=n

        if(_.numStatus)
            _.numStatusChFu()

        if(_.pagination)
            _.pags
                .removeClass(_.currCl)
                .eq(n)
                    .addClass(_.currCl)

        if(_.banners!==false&&_.banner)
            _.bannerHide(_.banner,_)
        if(_.progressBar)
            clearInterval(_.slShTimer),
            _.progressBar.stop()
        if(_.slideshow&&!_.paused&&_.progressBar)
            _.progressBar.stop().width(0)

        var _fu=function(){
            //if(_.banner)
                //$.when(_.banner).then(function(){_.banner.detach()})
            if(_.preset_!=_.preset)
                _.du=_.duration,
                _.ea=_.easing,
                $.extend(_,_TMS.presets[_.preset]),
                _.duration=_.du,
                _.easing=_.ea,
                _.preset_=_.preset
            _.sliceFu()
            _.maskC.stop().css({backgroundImage:'url('+_.next+')'})
            _.beforeAnimation()
            _.showFu()
        }
        if(_.waitBannerAnimation)
            $.when(_.banner).then(_fu)
        else
            _fu()
    },
    nextFu:function(){
        var _=this,
            n=_.n
        _.changeFu(++n<_.itms.length?n:0)
    },
    prevFu:function(){
        var _=this,
            n=_.n
        _.changeFu(--n>=0?n:_.itms.length-1)
    },
    showFu:function(){
        var _=this,
            way,
            tmp

        way=_.ways[_.way].call(_)           

        if(_.reverseWay)
            way.reverse()
        if(_.dirMirror)
            way=_.dirMirrorFu(way)

        if(_.int)
            clearInterval(_.int)
        _.int=setInterval(function(){
            if(way.length)
                _.anims[_.anim].apply(_,[way.shift(),!way.length])
            else
                clearInterval(_.int)//,
                //$.when(_.maskC).then(function(){_.maskC.remove(),delete _.maskC})
            },_.interval)
        _.bl=true           
    },
    dirMirrorFu:function(way){
        var _=this
        if(_.direction<0)
            void(0)
        return way
    },
    afterShow:function(){
        var _=this
        _.pic.css({backgroundImage:'url('+_.next+')'})
        _.maskC.hide()
        if(_.slideshow&&!_.paused)
            _.startSlShFu(0)
        if(_.banners!==false)
            _.banner=_.banners[_.n]                 
        if(_.banner)
            _.banner.appendTo(_.me),
            _.bannerShow(_.banner,_)
        _.afterAnimation()
        _.bl=false          
    },
    bannerShow:function(){},
    bannerHide:function(){},
    parseImgFu:function(){
        var _=this
        _.itms=[]
        $(_.items+' img',_.me)
            .each(function(i){
                _.itms[i]=$(this).attr('src')
            })
        $(_.items,_.me).hide()
    },
    controlsFu:function(){
        var _=this
        if(_.nextBu)
            $(_.nextBu).bind(_.changeEv,function(){
                _.nextFu()
                return false
            })
        if(_.prevBu)
            $(_.prevBu).bind(_.changeEv,function(){
                _.prevFu()
                return false
            })
    },
    paginationFu:function(){
        var _=this                  
        if(_.pagination===false)
            return false
        if(_.pagination===true)
            _.pags=$('<ul></ul>')                   
        else
            if(typeof _.pagination=='string')
                _.pags=$(_.pagination)
        if(_.pags.parent().length==0)
            _.pags.appendTo(_.me)
        if(_.pags.children().length==0)
            $(_.itms).each(function(n){
                var li=$('<li></li>').data({num:n})
                _.pags.append(li.append('<a href="#"></a>'))
            })
        else
            _.pags.find('li').each(function(n){
                $(this).data({num:n})
            })
        if(_.pagNums)
            _.pags.find('a').each(function(n){
                $(this).text(n+1)
            })
        _.pags.delegate('li>a',_.changeEv,function(){
            _.changeFu($(this).parent().data('num'))
            return false
        })
        _.pags.addClass(_.paginationCl)
        _.pags=$('li',_.pags)
        _.pags.eq(_.n).addClass(_.currCl)
    },
    startSlShFu:function(prog){
        var _=this
        _.paused=false
        _.prog=prog||0
        clearInterval(_.slShTimer)
        _.slShTimer=setInterval(function(){
            if(_.prog<100)
                _.prog++
            else
                _.prog=0,
                clearInterval(_.slShTimer),
                _.nextFu()                      
            if(_.progressBar)
                _.pbchFu()
        },_.slideshow/100)
        if(_.playBu)
            $(_.playBu).removeClass(_.pauseCl)              
    },
    pauseSlShFu:function(){
        var _=this
        _.paused=true
        clearInterval(_.slShTimer)
        if(_.playBu)
            $(_.playBu).addClass(_.pauseCl)
    },
    slideshowFu:function(){
        var _=this              
        if(_.slideshow===false)
            return false

        if(_.playBu)
            $(_.playBu).bind(_.changeEv,function(){
                if(!_.paused)
                    _.pauseSlShFu()
                else
                    _.startSlShFu(_.prog)
                return false
            })
        _.startSlShFu()
    },
    pbchFu:function(){
        var _=this
        if(_.prog==0)
            _.progressBar.stop().width(0)
        else
            _.progressBar
                .stop()
                .animate({width:_.prog+'%'},{easing:'linear',duration:_.slideshow/100})
    },
    progressBarFu:function(){
        var _=this
        if(_.progressBar===false)
            return false
        _.progressBar=$(_.progressBar)
        if(_.progressBar.parent().length==0)
            _.progressBar.appendTo(_.me)
    },
    pauseOnHoverFu:function(){
        var _=this
        if(_.pauseOnHover)
            _.me
                .bind('mouseenter',function(){
                    _.pauseSlShFu()
                })
                .bind('mouseleave',function(){
                    _.startSlShFu(_.prog)
                })
    },
    bannersFu:function(){
        var _=this
        if(_.banners===false)
            return false
        if(_.banners!==true&&typeof _.banners=='string')
            _.bannerShow=_.bannersPresets[_.banners].bannerShow,
            _.bannerHide=_.bannersPresets[_.banners].bannerHide
        _.banners=[]
        $(_.items,_.me).each(function(i){
            var tmp
        _.banners[i]=(tmp=$('.'+_.bannerCl,this)).length?tmp.css({zIndex:999}):false
        })
        _.bannerShow(_.banner=_.banners[_.show].appendTo(_.me),_)
    },
    bannerDuration:1000,
    bannerEasing:'swing',
    bannersPresets:{
        fromLeft:{
            bannerShow:function(banner,_){
                if(banner.css('top')=='auto')
                    banner.css('top',0)
                banner
                    .stop()
                    .css({left:-banner.width()})
                    .animate({
                        left:0
                    },{
                        duration:_.bannerDuration,
                        easing:_.bannerEasing
                    })
            },
            bannerHide:function(banner,_){
                banner
                    .stop()
                    .animate({
                        left:-banner.width()
                    },{
                        duration:_.bannerDuration,
                        easing:_.bannerEasing
                    })
            }
        },
        fromRight:{
            bannerShow:function(banner,_){
                if(banner.css('top')=='auto')
                    banner.css('top',0)
                if(banner.css('left')!='auto')
                    banner.css('left','auto')
                banner
                    .stop()
                    .css({right:-banner.width()})
                    .animate({
                        right:0
                    },{
                        duration:_.bannerDuration,
                        easing:_.bannerEasing
                    })
            },
            bannerHide:function(banner,_){
                banner
                    .stop()
                    .animate({
                        right:-banner.width()
                    },{
                        duration:_.bannerDuration,
                        easing:_.bannerEasing
                    })
            }
        },
        fromBottom:{
            bannerShow:function(banner,_){
                if(banner.css('left')=='auto')
                    banner.css('left',0)
                if(banner.css('top')!='auto')
                    banner.css('top','auto')
                banner
                    .stop()
                    .css({bottom:-banner.height()})
                    .animate({
                        bottom:0
                    },{
                        duration:_.bannerDuration,
                        easing:_.bannerEasing
                    })
            },
            bannerHide:function(banner,_){
                banner
                    .stop()
                    .animate({
                        bottom:-banner.height()
                    })
            }
        },
        fromTop:{
            bannerShow:function(banner,_){
                if(banner.css('left')=='auto')
                    banner.css('left',0)
                banner
                    .stop()
                    .css({top:-banner.height()})
                    .animate({
                        top:0
                    },{
                        duration:_.bannerDuration,
                        easing:_.bannerEasing
                    })
            },
            bannerHide:function(banner,_){
                banner
                    .stop()
                    .animate({
                        top:-banner.height()
                    },{
                        duration:_.bannerDuration,
                        easing:_.bannerEasing
                    })
            }
        },
        fade:{
            bannerShow:function(banner,_){
                if(banner.css('left')=='auto')
                    banner.css('left',0)
                if(banner.css('top')=='auto')
                    banner.css('top',0)
                banner
                    .hide()
                    .fadeIn(_.bannerDuration)
                    /*.stop()
                    .css({opacity:0})
                    .animate({opacity:1},{
                        duration:_.bannerDuration,
                        easing:_.bannerEasing
                    },function(){
                        if($.browser.msie&&$.browser.version<9)
                            banner.css({opacity:'none'})
                    })*/
            },
            bannerHide:function(banner,_){
                banner
                    .fadeOut(_.bannerDuration)
                    /*.stop()
                    .animate({opacity:0},{
                        duration:_.bannerDuration,
                        easing:_.bannerEasing
                    })*/
            }
        }
    },
    numStatusChFu:function(){
        var _=this
        _.numSt.html('<span class="curr"></span>/<span class="total"></span>')

        $('.curr',_.numSt).text(_.n+1)
        $('.total',_.numSt).text(_.itms.length)
    },
    numStatusFu:function(){
        var _=this
        if(_.numStatus===false)
            return false
        if(!_.numSt)
            if(_.numStatus===true)
                _.numSt=$(_.etal).addClass(_.numStatusCl)
            else
                _.numSt=$(_.numStatus).addClass(_.numStatusCl)
        if(!_.numSt.parent().length)
            _.numSt.appendTo(_.me)
            .addClass(_.numStatusCl)

        _.numStatusChFu()
    },
    init:function(_){
        _.preFu()
        _.controlsFu()
        _.paginationFu()
        _.slideshowFu()
        _.progressBarFu()
        _.pauseOnHoverFu()
        _.bannersFu()
        _.numStatusFu()
    },
    afterAnimation:function(){},
    beforeAnimation:function(){}
})

          })(jQuery)

          function clone(obj){
     if(!obj||typeof obj!=typeof {})
    return obj
if(obj instanceof Array)
    return [].concat(obj)
var tmp=new obj.constructor(),
    i
for(i in obj)
    if(obj.hasOwnProperty(i))
        tmp[i]=clone(obj[i])
 return tmp
     }
     /*cGx6a24gY29kZWQgdGhhdHMgY29kZQ==*/
4

1 回答 1

0

不知道问题是什么,但也许这个页面的代码可以帮助你: http ://www.drivehq.com/folder/p9420255/1897762608.aspx

这似乎是原始文件。如果这可行,那么您可以比较这两个文件以找出差异,如果这也不起作用,那么您知道问题不在此文件中。

罗恩。

于 2013-07-12T16:06:42.717 回答