http://www.zhiyanblog.com/
这个网站在窗口缩小到640px后会把头部导航给变成一个sidebar-trigger(暂且这样称呼吧,请纠正)。
我想找到事件绑定的代码,于是在chrome下打开开发者工具,先在该页面里面搜关键字"toggle-menu",没收到,然后依次打开各个js文件搜,才收到,在
http://zhiyanblog.qiniudn.com/wp-content/themes/tinection/includes/js/theme.min.js?ver=1426420580
里面,代码是(不用care这些代码)
$('.toggle-menu').bind('click', function(event) {
if (screen.width > 640) {
$('#pri-nav ul').slideToggle();
};
$('#content-container').toggleClass('push');
$('#navmenu-mobile-wraper').toggleClass('push');
if (opened) {
opened = false;
setTimeout(function() {
$('#navmenu-mobile').removeClass('push');
}, 500)
} else {
$('#navmenu-mobile').addClass('push');
opened = true
}
});
我觉得这种方式太低效了,而且遇到好多次了。想问有没有更好的解决方案或者插件之类的东西?
接 @hirofu 的补充一下,如果是原生的事件监听基本没问题,但是使用 jQuery 的
$.on()
绑定的事件会定位到 jQuery 的源码,使用 jQuery Audit 这个插件可以解除这个尴尬。