var layout; $(function() { layout = new Layout($(this)); }); var Layout = function(d) { var nav; this.$document = d; this.$window = $(window); this.$nav = this.$document.find('#nv'); nav = new Nav(this.$nav); }; var Nav = function(e) { this.setup(e); }; $.extend(Nav.prototype, { setup: function(e) { var self = this; var $nav = e; var $nav_main_anchor = $nav.find('a.d1'); var $nav_sub_wrapper = $nav.find('ul.ns'); var $nav_sub_anchor = $nav_sub_wrapper.find('a'); var $nav_current = $nav.find('li.current').data('active', true);; var timer = $.timer(); var timeout = 1000; self.$nav = $nav; self.$nav_main_anchor = $nav_main_anchor; self.$nav_sub_wrapper = $nav_sub_wrapper; self.$nav_sub_anchor = $nav_sub_anchor; self.$nav_current = $nav_current; self.timer = timer; self.timeout = timeout; self.$nav_main_anchor.on({ mouseenter: function(event) { return self.onMouseEnter.apply(self, arguments); event.preventDefault(); event.stopPropagation(); }, mouseleave: function(event) { return self.onMouseLeave.apply(self, arguments); event.preventDefault(); event.stopPropagation(); } }); self.$nav_sub_anchor.on({ mouseenter: function(event) { return self.onMouseEnter.apply(self, arguments); event.preventDefault(); event.stopPropagation(); }, mouseleave: function(event) { return self.onMouseLeave.apply(self, arguments); event.preventDefault(); event.stopPropagation(); } }); }, onMouseEnter: function(e) { var $main = this.getMainItem(e); if ($main.data('active') == true) { return; } $main.addClass('current').find('ul.ns').show(); this.$nav_current.removeClass('current').find('ul.ns').hide(); }, onMouseLeave: function(e) { var $main = this.getMainItem(e); if ($main.data('active') == true) { return; } $main.removeClass('current').find('ul.ns').hide(); this.$nav_current.addClass('current').find('ul.ns').show(); }, getMainItem: function(e) { var me = $(e.target), $main; if (me.hasClass('saved') == true) { $main = me.data('main'); } else { if (me.hasClass('d1') == true) { $main = me.parent(); } else { $main = me.parent().parent().parent(); } me.data('main', $main).addClass('saved'); } return $main; }, init: function() { this.$nav_current.addClass('current'); } }); var view_reply_form = function() { $('#reply-text').hide(); $('#reply-form').show(); }; var view_reply_text = function() { $('#reply-text').show(); $('#reply-form').hide(); }; // λ©”μΈνŒμ—… function MainPopup(d){ this.day = d; this.element = $('#MP' + d).hide(); this.expires = 1; this.init(); }; MainPopup.prototype = { init: function(){ var _has = $.cookie(this.day); if (_has != 'ok') { this.open(); } }, set_cookie: function(d){ $.cookie(d, 'ok', { expires: this.expires }); this.close(); }, open: function(){ this.element.show().css('display', 'block'); }, close: function(){ this.element.hide(); } };