微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用jQuery模拟Hover

鉴于现有的“按钮”

HTML:

<div id="MB">
    <ul class="list">
       <li id="post-5"><a href="#post-5">5</a></li>
       <li id="post-4"><a href="#post-4">4</a></li>
       <li id="post-3"><a href="#post-3">3</a></li>
       <li id="post-2"><a href="#post-2">2</a></li>
       <li id="post-1"><a href="#post-1">1</a></li>
    </ul> 
 </div>

CSS:

#MB .list li a {
        float:left;
        color:#333;
        background:#f6f6f6;
        border:1px solid #eaeaea;
        border-right:none;
        padding:0 8px;
        }

   #MB .list li a:hover,#MB .list li a:focus {
        color:#fff;
        border:1px solid #333333;
        border-right:none;
        background:#404040;
        text-decoration:none;
        }

我想每隔n秒自动模拟每个按钮上的“悬停”.

这意味着每n秒按钮“悬停”(改变颜色等),在下一个间隔“关闭”,随后的按钮将“打开”,依此类推……

解决方法

#MB .list a:hover,#MB .list a:focus,#MB .list .active a {
  /* hover styles */
}

(我已经简化了你的选择器,我也建议尝试删除外部div,因为这些通常是不必要的,仅仅ul就足够了)

Javascript悬停:

function setHover() {
    if ($('#MB .list .active').next().length) {
        $('#MB .list .active').next().addClass('active').end().removeClass('active');
    } else {
        $('#MB .list .active').removeClass('active');
        $('#MB .list li:first-child').addClass('active');
    }
}

setInterval(setHover,1000);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐