123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- ;(function ($, window, document, undefined) {
- var pluginName = "metisMenu",
- defaults = {
- toggle: true
- };
-
- function Plugin(element, options) {
- this.element = element;
- this.settings = $.extend({}, defaults, options);
- this._defaults = defaults;
- this._name = pluginName;
- this.init();
- }
- Plugin.prototype = {
- init: function () {
- var $this = $(this.element),
- $toggle = this.settings.toggle;
- $this.find('li.active').has('ul').children('ul').addClass('collapse in');
- $this.find('li').not('.active').has('ul').children('ul').addClass('collapse');
- $this.find('li').has('ul').children('a').on('click', function (e) {
- e.preventDefault();
- $(this).parent('li').toggleClass('active').children('ul').collapse('toggle');
- if ($toggle) {
- $(this).parent('li').siblings().removeClass('active').children('ul.in').collapse('hide');
- }
- });
- }
- };
- $.fn[ pluginName ] = function (options) {
- return this.each(function () {
- if (!$.data(this, "plugin_" + pluginName)) {
- $.data(this, "plugin_" + pluginName, new Plugin(this, options));
- }
- });
- };
- })(jQuery, window, document);
|