首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >循环通过文本上的按钮单击jQuery末端的链接

循环通过文本上的按钮单击jQuery末端的链接
EN

Stack Overflow用户
提问于 2015-11-17 19:54:30
回答 2查看 307关注 0票数 2

我是jQuery的新手,所有的一切都伴随着我!因此,我试图创建一个按钮,当点击,消失和一个循环的文本旋转,在这个周期的结束,一个链接显示给用户然后点击上。

我已经把文字的基本周期写下来了,但是我被困住了!有人能帮我吗?非常感谢!

代码语言:javascript
复制
var divs = $('div[id^="content-"]').hide(),
  i = 0;

(function cycle() {

  divs.eq(i).fadeIn(400)
    .delay(1000)
    .fadeOut(400, cycle);

  i = ++i % divs.length;

})();
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="button">Process</div>
<div id="content-1">stage 1</div>
<div id="content-2">stage 2</div>
<div id="content-3">stage 3</div>
<div id="content-4">stage 4</div>
<div id="content-5">stage 5</div>
<a href="google.com">Your link</a>

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-11-17 20:31:01

我想我已经解决了你的问题。你可以试试:

代码语言:javascript
复制
        function cycle(ele, i) {
            if (ele.length > 0 && i < ele.length) {
                $(ele[i]).fadeIn(400, function() {
                    $(this).delay(1000).fadeOut(400, function() {
                        cycle(ele, i + 1);
                    });
                });
            } else {
                $('a[id^="link-"]').show();
            }
        }
        $(function() {
            $('div[id^="content-"]').hide();
            $('a[id^="link-"]').hide();
            $('#button').click(function() {
                $(this).hide();
                cycle($('div[id^="content-"]'), 0);
            });
        });
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <link rel="stylesheet" href="jquery-ui.css">
    <script src="jquery-1.11.2.js"></script>
    <script src="jquery-ui.js"></script>
    <script type="application/javascript">
    </script>
</head>
<body>
<button id="button">Process</button>
<div id="content-1">stage 1</div>
<div id="content-2">stage 2</div>
<div id="content-3">stage 3</div>
<div id="content-4">stage 4</div>
<div id="content-5">stage 5</div>
<a id="link-1" href="google.com">Your link</a>
</body>
</html>

票数 1
EN

Stack Overflow用户

发布于 2015-11-17 20:27:26

试试这个:

代码语言:javascript
复制
$('a').hide();
var divs = $('div[id^="content-"]').hide(),
      i = -1;

$("#button").click(function()
{  
  $(this).hide();
  (function cycle() {   
       if(i < divs.length - 1)
             i = ++i % divs.length;
          else
          {
            $('a').show();   
              return;
          }

          divs.eq(i).fadeIn(400)
                    .delay(1000)
                    .fadeOut(400, cycle);           

  })();    

});

http://jsfiddle.net/86829ryz/16/

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

https://stackoverflow.com/questions/33765814

复制
相关文章

相似问题

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