我在jquery中创建了子菜单的短模块。我添加了点击事件,即使菜单是动态创建的,它也应该有效,但它不是。我试图将点击直接绑定到子菜单并且它正在工作。任何人都知道为什么这行代码不起作用?
$(document).on('click', class_btn_submenu, toggle);
但是这个有用吗?
$(class_btn_submenu).on('click', toggle);
完整模块:
var Submenu = (function() {
var class_active = 'active';
var class_btn_submenu = '#account-sil';
var holder_menu = $('#user-submenu');
var open = function() {
holder_menu.addClass(class_active);
};
var close = function() {
holder_menu.removeClass(class_active);
};
var toggle = function(e) {
e.preventDefault();
if(holder_menu.hasClass(class_active)) {
close();
} else {
open();
}
};
$(document).on('click', class_btn_submenu, toggle);
$(class_btn_submenu).on('click', toggle);
return this;
})();
PS:我不会在那里举办这两项活动,而只是展示我在哪里举办的活动。