KONTOLODON
/
var
/
www
/
ojs-3.3.0-13
/
plugins
/
themes
/
material
/
js
/
Nama File / Folder
Size
Action
main.js
5.769KB
Hapus
Edit
Rename
/** * @file plugins/themes/default/js/main.js * * Copyright (c) 2014-2021 Simon Fraser University * Copyright (c) 2000-2021 John Willinsky * Distributed under the GNU GPL v3. For full terms see the file docs/COPYING. * * @brief Handle JavaScript functionality unique to this theme. */ (function($) { // Window onload functions window.onload = function () { // Display preloader animation while HTML page is parsing document.querySelectorAll('.html-preloader')[0].setAttribute('class', 'no-html-preloader'); } /* // Initialize dropdown navigation menus on large screens // See bootstrap dropdowns: https://getbootstrap.com/docs/4.0/components/dropdowns/ if (typeof $.fn.dropdown !== 'undefined') { var $nav = $('#navigationPrimary, #navigationUser'), $submenus = $('ul', $nav); function toggleDropdowns() { if (window.innerWidth > 992) { $submenus.each(function(i) { var id = 'pkpDropdown' + i; $(this) .addClass('dropdown-menu') .attr('aria-labelledby', id); $(this).siblings('a') .attr('data-toggle', 'dropdown') .attr('aria-haspopup', true) .attr('aria-expanded', false) .attr('id', id) .attr('href', '#'); }); $('[data-toggle="dropdown"]').dropdown(); } else { $('[data-toggle="dropdown"]').dropdown('dispose'); $submenus.each(function(i) { $(this) .removeClass('dropdown-menu') .removeAttr('aria-labelledby'); $(this).siblings('a') .removeAttr('data-toggle') .removeAttr('aria-haspopup') .removeAttr('aria-expanded',) .removeAttr('id') .attr('href', '#'); }); } } window.onresize = toggleDropdowns; $().ready(function() { toggleDropdowns(); }); } // Toggle nav menu on small screens $('.pkp_site_nav_toggle').click(function(e) { $('.pkp_site_nav_menu').toggleClass('pkp_site_nav_menu--isOpen'); $('.pkp_site_nav_toggle').toggleClass('pkp_site_nav_toggle--transform'); }); // Modify the Chart.js display options used by UsageStats plugin document.addEventListener('usageStatsChartOptions.pkp', function(e) { e.chartOptions.elements.line.backgroundColor = 'rgba(0, 122, 178, 0.6)'; e.chartOptions.elements.rectangle.backgroundColor = 'rgba(0, 122, 178, 0.6)'; }); // Toggle display of consent checkboxes in site-wide registration var $contextOptinGroup = $('#contextOptinGroup'); if ($contextOptinGroup.length) { var $roles = $contextOptinGroup.find('.roles :checkbox'); $roles.change(function() { var $thisRoles = $(this).closest('.roles'); if ($thisRoles.find(':checked').length) { $thisRoles.siblings('.context_privacy').addClass('context_privacy_visible'); } else { $thisRoles.siblings('.context_privacy').removeClass('context_privacy_visible'); } }); } */ // Show or hide the reviewer interests field on the registration form // when a user has opted to register as a reviewer. function reviewerInterestsToggle() { var is_checked = false; $('#reviewerOptinGroup').find('input').each(function() { if ($(this).is(':checked')) { is_checked = true; return false; } }); if (is_checked) { $('#reviewerInterests').addClass('is_visible'); } else { $('#reviewerInterests').removeClass('is_visible'); } } reviewerInterestsToggle(); $('#reviewerOptinGroup input').on('click', reviewerInterestsToggle); /** * Easy selector helper function */ const select = (el, all = false) => { el = el.trim() if (all) { return [...document.querySelectorAll(el)] } else { return document.querySelector(el) } } /** * Easy event listener function */ const on = (type, el, listener, all = false) => { let selectEl = select(el, all) if (selectEl) { if (all) { selectEl.forEach(e => e.addEventListener(type, listener)) } else { selectEl.addEventListener(type, listener) } } } /** * Easy on scroll event listener */ const onscroll = (el, listener) => { el.addEventListener('scroll', listener) } /** * Toggle .header-scrolled class to #header when page is scrolled */ let selectHeader = select('#header') if (selectHeader) { const headerScrolled = () => { if (window.scrollY > 100) { selectHeader.classList.add('header-scrolled') } else { selectHeader.classList.remove('header-scrolled') } } window.addEventListener('load', headerScrolled) onscroll(document, headerScrolled) } /** * Mobile nav toggle */ on('click', '.mobile-nav-toggle', function(e) { select('#navbar').classList.toggle('navbar-mobile') this.classList.toggle('bi-list') this.classList.toggle('bi-x') }) /** * Back to top button */ let backtotop = select('.back-to-top') if (backtotop) { const toggleBacktotop = () => { if (window.scrollY > 100) { backtotop.classList.add('active') } else { backtotop.classList.remove('active') } } window.addEventListener('load', toggleBacktotop) onscroll(document, toggleBacktotop) } /** * Mobile nav dropdowns activate */ on('click', '.navbar .dropdown > a', function(e) { if (select('#navbar').classList.contains('navbar-mobile')) { e.preventDefault() this.nextElementSibling.classList.toggle('dropdown-active') } }, true) /** * Testimonials slider */ new Swiper('.testimonials-slider', { speed: 600, loop: true, autoplay: { delay: 5000, disableOnInteraction: false }, slidesPerView: 'auto', pagination: { el: '.swiper-pagination', type: 'bullets', clickable: true } }); /** * Animation on scroll */ window.addEventListener('load', () => { AOS.init({ duration: 1000, easing: 'ease-in-out', once: true, mirror: false }) }); })(jQuery);