开发者社区> 问答> 正文

javascript 怎样实现 hover 事件延时触发 jquery 的 toggleClass()

如题,我希望移动到 .dropdown 区域内时,.item 能够延时个1秒再添加 .highlight,离开时也延时1秒再移除 highlight,改怎么实现呢?

<div class="dropdown">
  <div class="item">helloworld</div>
</div>
.item {
    background: pink;
}
.highlight {
  height: 100px;
  background: yellow;
}
全选复制放进笔记$('.dropdown').hover(function() {
    $('.item', this).toggleClass('highlight');
});
http://jsfiddle.net/AKcHr/

展开
收起
小旋风柴进 2016-03-24 10:01:48 2534 0
1 条回答
写回答
取消 提交回答
  • $('.dropdown').hover(function() {
        var $item = $('.item', this);
        setTimeout(function(){$item.toggleClass('highlight');}, 1000);
    });

    变量在setTimeout() 和 setInterval()没有用,所以用function代替.

    2019-07-17 19:12:02
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
JavaScript异步编程 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载