File manager - Edit - /home/theblueo/questionnaire/wp-content/plugins/sfwd-lms/assets/js/jquery.dropdown.js
Back
/* * jQuery Dropdown: A simple dropdown plugin * * Contribute: https://github.com/claviska/jquery-dropdown * * @license: MIT license: http://opensource.org/licenses/MIT * * Customized by Yudhistira Mauris (http://www.yudhistiramauris.com/) * */ if (jQuery) (function ($) { $.extend($.fn, { jqDropdown: function (method, data) { switch (method) { case 'show': show(null, $(this)); return $(this); case 'hide': hide(); return $(this); case 'attach': return $(this).attr('data-jq-dropdown', data); case 'detach': hide(); return $(this).removeAttr('data-jq-dropdown'); case 'disable': return $(this).addClass('jq-dropdown-disabled'); case 'enable': hide(); return $(this).removeClass('jq-dropdown-disabled'); } } }); function show(event, object) { var trigger = event ? $(this) : object, jqDropdown = $(trigger.attr('data-jq-dropdown')), isOpen = trigger.hasClass('jq-dropdown-open'); // In some cases we don't want to show it if (event) { if ($(event.target).hasClass('jq-dropdown-ignore')) return; event.preventDefault(); event.stopPropagation(); } else { if (trigger !== object.target && $(object.target).hasClass('jq-dropdown-ignore')) return; } hide(); if (isOpen || trigger.hasClass('jq-dropdown-disabled')) return; // Show it trigger.addClass('jq-dropdown-open'); jqDropdown .data('jq-dropdown-trigger', trigger) .show(); // Position it position(); // Trigger the show callback jqDropdown .trigger('show', { jqDropdown: jqDropdown, trigger: trigger }); } function hide(event) { // In some cases we don't hide them var targetGroup = event ? $(event.target).parents().addBack() : null; // Are we clicking anywhere in a jq-dropdown? if (targetGroup && targetGroup.is('.jq-dropdown')) { // Is it a jq-dropdown menu? if (targetGroup.is('.jq-dropdown-menu')) { // Did we click on an option? If so close it. if (!targetGroup.is('A')) return; } else { // Nope, it's a panel. Leave it open. return; } } // Hide any jq-dropdown that may be showing $(document).find('.jq-dropdown:visible').each(function () { var jqDropdown = $(this); jqDropdown .hide() .removeData('jq-dropdown-trigger') .trigger('hide', { jqDropdown: jqDropdown }); }); // Remove all jq-dropdown-open classes $(document).find('.jq-dropdown-open').removeClass('jq-dropdown-open'); } function position() { var jqDropdown = $('.jq-dropdown:visible').eq(0), trigger = jqDropdown.data('jq-dropdown-trigger'), hOffset = trigger ? parseInt(trigger.attr('data-horizontal-offset') || 0, 10) : null, vOffset = trigger ? parseInt(trigger.attr('data-vertical-offset') || 0, 10) : null; if (jqDropdown.length === 0 || !trigger) return; if ( $( '#wpadminbar' ).length === 0 ) { // Position the jq-dropdown relative-to-parent... if (jqDropdown.hasClass('jq-dropdown-relative')) { jqDropdown.css({ left: jqDropdown.hasClass('jq-dropdown-anchor-right') ? trigger.position().left - (jqDropdown.outerWidth(true) - trigger.outerWidth(true)) - parseInt(trigger.css('margin-right'), 10) + hOffset : trigger.position().left + parseInt(trigger.css('margin-left'), 10) + hOffset, top: trigger.position().top + trigger.outerHeight(true) - parseInt(trigger.css('margin-top'), 10) + vOffset }); } else { // ...or relative to document jqDropdown.css({ left: jqDropdown.hasClass('jq-dropdown-anchor-right') ? trigger.offset().left - (jqDropdown.outerWidth() - trigger.outerWidth()) + hOffset : trigger.offset().left + hOffset, top: trigger.offset().top + trigger.outerHeight() + vOffset }); } } else { var bar_height = $( '#wpadminbar' ).css( 'height' ); bar_height = parseInt( bar_height.replace( 'px', '' ) ); // Position the jq-dropdown relative-to-parent... if (jqDropdown.hasClass('jq-dropdown-relative')) { jqDropdown.css({ left: jqDropdown.hasClass('jq-dropdown-anchor-right') ? trigger.position().left - (jqDropdown.outerWidth(true) - trigger.outerWidth(true)) - parseInt(trigger.css('margin-right'), 10) + hOffset : trigger.position().left + parseInt(trigger.css('margin-left'), 10) + hOffset, top: trigger.position().top + trigger.outerHeight(true) - parseInt(trigger.css('margin-top'), 10) + vOffset }); } else { // ...or relative to document jqDropdown.css({ left: jqDropdown.hasClass('jq-dropdown-anchor-right') ? trigger.offset().left - (jqDropdown.outerWidth() - trigger.outerWidth()) + hOffset : trigger.offset().left + hOffset, top: trigger.offset().top + trigger.outerHeight() + vOffset - bar_height }); } } } $(document).on('click.jq-dropdown', '[data-jq-dropdown]', show); $(document).on('click.jq-dropdown', hide); $(window).on('resize', position); })(jQuery);
| ver. 1.4 |
Github
|
.
| PHP 7.0.33 | Generation time: 0.02 |
proxy
|
phpinfo
|
Settings