未捕获的TypeError:jQuery(...)。on不是一个函数

时间:2017-01-31 11:57:18

标签: jquery drupal-7

嗨添加了关闭侧窗的代码

if(jQuery(window).width()>=320){
    jQuery(".side-nav-button").on("click tap", function() {
        jQuery(".side-nav-container").toggleClass("showNav hideNav").removeClass("side-nav-hide");
        jQuery(this).toggleClass("animated");
     });
}

这是我使用的代码。 我收到了错误消息"未捕获的TypeError:jQuery(...)。on不是函数"

请检查我弄错的地方

1 个答案:

答案 0 :(得分:1)

  

.on()

     

描述:将一个或多个事件的事件处理函数附加到所选元素。   版本增加:1.7

jQuery版本1.7中添加了.on()方法,因此请检查您的jQuery是否有版本> = 1.7或者是否正确引用了jQuery。

.on()的旧选项.live()

  

.live()

     

描述:为现在和将来与当前选择器匹配的所有元素附加事件处理程序。   版本已添加:1.3,版本已弃用:1.7,已删除:1.9

另外,请尝试使用$(".side-nav-button")而不是jQuery(".side-nav-button")(另外还要调用jQuery)。

也许你在jQuery和另一个库之间存在冲突,在这种情况下,我建议你阅读jQuery.noConflict()

你可以像这样包装你的jQuery代码(给jQuery一个alias):

jQuery.noConflict();
(function( $ ) {
  $(function() {
    // More code using $ as alias to jQuery
  });
})(jQuery);

这样jQuery不会与其他库冲突