zoukankan      html  css  js  c++  java
  • jQuery用unbind方法去掉hover事件及其他方法介绍

    近日项目开发十分的繁忙,其中一个需求是实现响应式导航。(响应式的问题我们在css相关的博客中再交流)

    大家都知道导航是需要下来菜单效果的,必然就会用到 jQuery的 hover() 方法。若是导航放在ipad中,自然hover()就没有什么意义了。那该如何取消hover()并添加touch事件呢?

    今天遇到jquery需要去掉hover的问题,原以为直接unbind(“hover”)就可以搞定,可是搞了半天都报错。

    原因其实很简单,hover并不是事件。打开参考手册,hover其实由 mouseenter和mouseleave构成的。这样问题就很明了!

    /* 这种方法是错误的 */
    $(#hover_div).unbind("hover");
    
    /* 这种方法也是错误的 */
    $(#hover_div).unbind("mouseover").unbind("mouseout");
    
    /* 这种方法是新增的,在老的版本里是无法使用的 */
    $(#hover_div).unbind("mouseenter mouseleave");
    
    /* 这种方法正确的,新老版本皆可用 */
    $(#hover_div).unbind("mouseenter").unbind("mouseleave"); 

    上面的代码建议使用第四种,相对安全些。(自己也没测试具体哪些版本支持第三种方法)若是觉得不爽,自己刚download了新版的jQuery,就用第三种吧!

    不管怎样,问题已解决,接着写代码吧!勤劳的码农。

  • 相关阅读:
    参数默认值
    调用外部 DLL 中的函数(1. 早绑定)
    Delphi 运行时错误信息表
    分享:PyPyODBC 0.9.2发布 纯Python实现的pyodbc替代库
    我的书单
    我的书单
    Philip Guo googler
    我的书单
    isbn2title
    我的书单
  • 原文地址:https://www.cnblogs.com/dereksunok/p/3873673.html
Copyright © 2011-2022 走看看