jQuery.trigger()触发hover等事件的问题-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

jQuery.trigger()触发hover等事件的问题

2016-05-31 08:51:53 2001 1

对于Trigger的用法也百度了解过,目的为了在匹配的元素上触发制定的事件,但是对于这个解释还是模棱两可,下面请帮忙看下代码

这是一个基本的焦点轮播图的js代码

     $(".scroll").mouseenter(function() {
             if(adTimer){
             clearInterval(adTimer);
             }
     }).mouseleave(function(event) {
             adTimer =setInterval(function(){
                 showImg(index);
                 index++;
             if (index==len) {index=0;};
             },3000);
     }).trigger('mouseleave');

悬停图片时候clearinterval,离开图片时触发setinterval

但是关于最后一句.trigger('mouseleave')实在不明白含义,只知道为了实现开启网页就自动触发计时器,让轮播图开启切换,而不是等待Mouseleave后再触发事件。

主要的疑问就是在Trigger身上,以及在这里是如何实现的?谢谢各位大神了

取消 提交回答
全部回答(1)
  • 小旋风柴进
    2019-07-17 19:21:13

    整个代码的逻辑是:1.绑定鼠标进入时间;2.绑定鼠标离开事件;3.触发一次鼠标离开事件,即初始化执行setInterval。
    这种写法我个人是不大推荐的。我会这样写:

    // 对象变量
    var $scroll = $('.scroll'),
        adTimer = null;
    
    // 事件绑定
    $scroll.on({
        'mouseenter.scroll': function (e) {
            e.preventDefault();
    
            // 清除计时
            if (adTimer) {
                clearTimeout(adTimer);
            }
        },
        'mouseleave.scroll': function (e) {
            e.preventDefault();
    
            // 开始计时
            adTimer = setTimeout(function () {
                // 执行其他逻辑
                // ····
            }, 3000);
        }
    });
    
    // 初始化
    0 0
相关问答

1

回答

jquery trigger触发checkbox默认事件的问题

2016-03-26 09:17:56 2001浏览量 回答数 1

1

回答

jquery的ajax,要求返回格式是json,在结果还没有返回时,刷新页面,就会进入error函数,请问有没有解决办法?

2016-07-13 10:29:57 1897浏览量 回答数 1

1

回答

jquery ajax 提交Struts2请求 action的namespace问题

2016-07-13 14:39:40 1766浏览量 回答数 1

1

回答

JQuery中$.ajax()方法,只能在document.ready里调用?不能在普通function里调用?

2016-07-13 14:50:35 3889浏览量 回答数 1

1

回答

jquery ajax 跨域请求后,同步设置会无效,求设置同步的方法

2020-05-28 09:18:27 309浏览量 回答数 1

1

回答

jQuery的AJAX提交问题 - js报错

2020-05-31 15:12:36 312浏览量 回答数 1

1

回答

php ajax jquery城市联动获取select的ID遇到的问题?报错

2020-05-31 20:59:01 534浏览量 回答数 1

1

回答

后端302触发了jquery ajax的error事件? 400 报错

2020-06-01 10:44:42 811浏览量 回答数 1

1

回答

采用jquery 的ajax,提交程序出现两次,真奇怪? 400 报错

2020-06-02 17:17:04 248浏览量 回答数 1

1

回答

JQuery中ajax不能解析json报错

2020-06-03 10:54:28 311浏览量 回答数 1
文章
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载