(function ($) { /** * @param {object} _options */ $.fn.tabs = function (_options) { var options = { tabClass: 'box_header', activeClass: 'active', contentClass: 'tab_content' }; $.extend(options, _options); var $tabs = $(this).find('.' + options.tabClass); var $container = $(this); $tabs.click(function (e) { e.preventDefault(); $tabs.removeClass(options.activeClass); $container.find('.' + options.contentClass).removeClass(options.activeClass); $container.find('#' + $(this).data('tab-content-id')).addClass(options.activeClass); $(this).addClass(options.activeClass); }); }; }(jQuery)); $(function () { $('[data-tabs]').each(function () { $(this).tabs($(this).data('tabs') ?? {}); }); });