//////////////////////////////////////////////////////////////////////////////////////// //Document Ready //////////////////////////////////////////////////////////////////////////////////////// function execDocReady() { var pluginGroups = [ [ "../reference/light-blue/lib/vendor/jquery.ui.widget.js", "../reference/lightblue4/docs/lib/widgster/widgster.js" ], [ "../reference/lightblue4/docs/lib/bootstrap-select/dist/js/bootstrap-select.min.js", "../reference/jquery-plugins/textillate-0.4.0/assets/animate.css", "../reference/jquery-plugins/textillate-0.4.0/assets/jquery.fittext.js", "../reference/jquery-plugins/textillate-0.4.0/assets/jquery.lettering.js", "../reference/jquery-plugins/textillate-0.4.0/jquery.textillate.js" ] // 추가적인 플러그인 그룹들을 이곳에 추가하면 됩니다. ]; loadPluginGroupsParallelAndSequential(pluginGroups) .then(function () { console.log("모든 플러그인 로드 완료"); $("#sidebar").hide(); $(".wrap").css("margin-left", 0); $("#footer").load("/cover/html/template/landing-footer.html"); setTimeout(function () { $(".widget").widgster(); autoSlide(); $('.tlt').textillate({ // the default selector to use when detecting multiple texts to animate //selector: '.tlt_text', // enable looping loop: true, // sets the minimum display time for each text before it is replaced minDisplayTime: 2000, // sets the initial delay before starting the animation // (note that depending on the in effect you may need to manually apply // visibility: hidden to the element before running this plugin) initialDelay: 0, // set whether or not to automatically start animating autoStart: true, // custom set of 'in' effects. This effects whether or not the // character is shown/hidden before or after an animation //inEffects: [ 'wobble'], // custom set of 'out' effects //outEffects: [ 'bounce' ], // in animation settings in: { // set the effect name effect: 'wobble', // set the delay factor applied to each consecutive character delayScale: 1.5, // set the delay between each character delay: 50, // set to true to animate all the characters at the same time sync: false, // randomize the character sequence // (note that shuffle doesn't make sense with sync = true) shuffle: false, // reverse the character sequence // (note that reverse doesn't make sense with sync = true) reverse: false, // callback that executes once the animation has finished callback: function () {} }, // out animation settings. out: { effect: 'bounce', delayScale: 1.5, delay: 50, sync: false, shuffle: false, reverse: false, callback: function () {} }, // callback that executes once textillate has finished callback: function () {}, // set the type of token to animate (available types: 'char' and 'word') type: 'char' }); }, 500); // 메뉴 클릭 시 active 항목 바꾸기 var menuItems = document.querySelectorAll('#menuList li'); menuItems.forEach(function(item) { item.addEventListener('click', function() { menuItems.forEach(function(li) { li.classList.remove('active'); }); this.classList.add('active'); }); }); }) .catch(function (error) { console.error("플러그인 로드 중 오류 발생"); console.error(error); }); } // 자동 슬라이드 function autoSlide(){ $('#carousel-example-generic').carousel({ interval: 5000, }); }