最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
js鼠标经过tab选项卡时实现切换延迟
时间:2017-07-26 编辑:简简单单 来源:一聚教程网
偶然间在浏览网页时,发现这样的效果。当鼠标不经意间滑过tab时并不会切换,当鼠标停留在上面一段时候后才会切换。
个人觉得用户体验不错,优点是1.当用户只是滑过标签,并不需要切换,而此时如果切换标签需要请求数据时,会避免不必要的异步请求;2.避免页面在用户不需要的时候切换跳动,影响用户体验。
网上查阅了几个方法,发现下面的方法更简洁有效。整理下来,供以后参考。
其中的重点是那段js代码:原理是,通过hover的时候设置定时器,延迟执行切换方法,离开时,清楚计时器。当hover的时间小于延迟时间时,会清楚计时器,不会执行切换方法。仅当停留时间大于延迟时间才会切换。这样能有效避免滑过tab触发切换事件。
复制代码
代码如下 | 复制代码 |
$(function() { var t_li = $(".tab") var c_li = $(".tab-content div") t_li.hover(function() { var i = t_li.index($(this));
function way() { t_li.removeClass("cur").eq(i).addClass("cur"); c_li.hide().eq(i).show(); } timer = setTimeout(way, 500); }, function() { clearTimeout(timer); }); });
.head { width: 300px; height: 50px; border: 1px dashed #ccc; }
.tab { width: 50%; float: left; line-height: 50px; cursor: pointer; }
.cur { border-bottom: 2px solid red; }
tab1的内容 tab1的内容 tab1的内容
|
-
上一个: 原生js封装自定义滚动条
-
下一个: UEditor 默认字体和字号的修改方法
相关文章
- HTML简单购物数量小程序代码展示 10-31
- html canvas实现弹幕功能 10-31
- HTML中空格表示的意义 10-31
- html area标签解读 10-31
- html使用表单标签实现注册页面代码展示 10-31
- 使用HTML截图并保存为本地图片的代码展示 10-31