12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- $(function () {
- var info = {
- $sidebar: $('.sidebar'),
- $sidebarMain: $('.sidebar-main'),
- $sidebarBody: $('.sidebar-body'),
- events: [ 'click', 'touchstart', 'touchend', 'touchmove'],
- init:function () {
- this.setSidebarEvent();
- this.setSidebarMainEvent();
- this.setSbItemEvent();
- },
- setSidebarEvent: function () {
- var me = this;
- me.bindEvent( me.$sidebar, me.events[0], function () {
- me.hidePop();
- });
- },
- setSidebarMainEvent: function () {
- var me = this;
- me.bindEvent( me.$sidebarMain, me.events[0], function (e) {
- if (!!$(e.target).hasClass('sidebar-body') || !!$(e.target).hasClass('sidebar-main')) {
- me.hidePop();
- }
- });
- },
- setSbItemEvent: function () {
- var me = this;
- me.$sidebarBody.on('click','li.sb-item a',function(){
- var $this = $(this)
- if ($this.parent().hasClass('j-hascode')) {
- $('li.sb-item a').removeClass('active');
- $this.addClass('active');
- me.hidePop();
- }else{
- var sbIList = $this.siblings('.sb-i-list');
- var dis = sbIList.css('display');
- if (dis == 'none') {
- me.hideDownSideBar();
- sbIList.slideDown();
- $this.find('.i-d').addClass('active');
- }else {
- me.hideDownSideBar();
- }
- }
- })
- },
- hidePop: function () {
- var me = this;
- me.$sidebarMain.hasClass('active') ? me.$sidebarMain.removeClass('active') : me.$sidebarMain.addClass('active');
- me.$sidebarBody.hasClass('active') ? me.$sidebarBody.removeClass('active') : me.$sidebarBody.addClass('active');
- },
- hideDownSideBar: function () {
- $('.sb-i-list').slideUp();
- $('.i-d').removeClass('active');
- },
- bindEvent: function ( d, ev, cb, nd) {
- cb && d.on( ev, nd, cb);
- }
- };
- info.init();
- });
|