首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有办法让这个幻灯片自动移动吗?

有办法让这个幻灯片自动移动吗?
EN

Stack Overflow用户
提问于 2011-09-19 20:52:41
回答 1查看 1.2K关注 0票数 1

我用我的滑块(我自己做的),它正在工作..但是通过单击每个选项卡的数目

我想让它自动地每5秒或什么..。

这是html和javascript代码:

html:

代码语言:javascript
复制
<div class="slide2">
    <div id="tabs">
        <div id="content">
            <div id="slide-6" class="tab-slide" style="display: block">
        <div class="desc">
            <div>Slide 6 - tab1</div>
        </div>
            </div>

            <div id="slide-7" class="tab-slide">
        <div class="desc" style="width:320px;padding-top:236px;height:120px;">
            <h1>Slide 7 - tab2</h1>
        </div>
            </div>

            <div id="slide-8" class="tab-slide">
        <div class="desc" style="width:320px;">
            <h1>Slide 8 - tab3</h1>
        </div>
            </div>

            <div id="slide-9" class="tab-slide">
        <div class="desc" style="width:320px;">
            <h1>Slide 9 - tab4</h1>
        </div>
            </div>
        </div>
<ul id="nav2">
    <li><a class="current" id="tab-6" href="#tab">Tab1</a></li>
    <li><a id="tab-7" href="#tab">Tab2</a></li>
    <li><a id="tab-8" href="#tab">Tab3</a></li>
    <li><a id="tab-9" href="#tab">Tab4</a></li>
</ul>
    </div>

javascript:

代码语言:javascript
复制
        $(function(){

        $('#tabs #nav2 li a').click(function(){

            var currentNum = $(this).attr('id').slice(-1);
            $('#tabs #nav2 li a').removeClass('current');
            $(this).addClass('current');

            $('#tabs #content .tab-slide').hide(1);
            $('#tabs #content #slide-'+currentNum+'.tab-slide').show(300);
        });

        $('#tabsSlide #nav2 li a').click(function(){

            var currentNum = $(this).attr('id').slice(-1);
            $('#tabsSlide #nav2 li a').removeClass('current');
            $(this).addClass('current');

            $('#tabsSlide #content .tab-slide').slideUp(300);
            $('#tabsSlide #content #slide-'+currentNum+'.tab-slide').slideDown(300);
        });

    });

CSS:

代码语言:javascript
复制
    .slide2 {
    margin:0 auto;
    padding:0;
    width:574px;
}
#tabs {
    width:574px;
    margin:0 auto;
    padding:0;
}
#tabs #nav2 {
    float: right;
    margin:0;
    padding:0px;
    list-style-type:none;
    width:574px;
}
#tabs #nav2 li{
    display:inline;
}
#tabs #nav2 li a {
    display:block;
    width:25%;
    text-align:center;
    float:right;
    padding:0;
    margin:0;
    height:55px;
    line-height:55px;
    color:#0096d6;
    text-decoration:none;
    font-family:Tahoma;
    font-size:12px;
    font-weight:bold;
    background-image: url('images/slide/a.png');
}
#tabs #nav2 li a:hover {
    background:#dddede;
}
#tabs #nav2 li a.current {
    background:#dddede;
    color:#666666;
}
#tabs #content {
    padding:0px;
    clear: both;
    text-align: right;
    min-height: 366px;
}
#tabs #content ul {
    list-style-type:none;
    color:#c1c0c0;
}
.tab-list {
    width:115px;
    float:right;
    line-height:200%;
    margin:0px 10px 0px 0px;
    padding:0px 0px 0px 0px;
    color:#c1c0c0;
}
.tab-list a {
    color:#c1c0c0;
}
.tab-list a:hover {
    color:#0198d8;
}
#tabs #content .tab-slide { display: none; }
#tabs #content .tab-slide p {
    margin:0;
    padding: 0;
    font: 11px tahoma;
    line-height: 150%;
}
.slide2 #slide-6 {
    background-image: url('images/slide/1.jpg');
    width:574px;
    height:366px;
}
.slide2 #slide-7 {
    background-image: url('images/slide/2.jpg');
    width:574px;
    height:366px;
}
.slide2 #slide-8 {
    background-image: url('images/slide/3.jpg');
    width:574px;
    height:366px;
}
.slide2 #slide-9 {
    background-image: url('images/slide/4.jpg');
    width:574px;
    height:366px;
}

谢谢!

我不需要鼠标停止..。

我只想让内容自动移动,仅此而已!

EN

回答 1

Stack Overflow用户

发布于 2011-09-19 21:27:00

这将为您循环(每5秒一次)...without所有代码,并在其中添加钩子,这似乎是最简单的方法。它不会像许多滑块那样暂停循环计时器,除非您也添加了该功能。

代码语言:javascript
复制
var to;
function cycle() {
    $('#tabsSlide #nav2 li a').click();
    to = setTimeout(cycle,5000);
}
cycle();

注意,要添加暂停效果,您需要通过清除mouseover上的超时和在mouseout上恢复来停止/重新启动超时调用。如果你想恢复计时器而不是重新启动它,你需要做一些数学来完成。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7477150

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档