;(function($){ (function(){//scrollTo() var name = 'scrollTo'; var ua = window.navigator.userAgent.toLowerCase(); var transitionend = 'webkitTransitionEnd mozTransitionEnd oTransitionEnd transitionend'; var animationstart = 'webkitAnimationStart mozAnimationStart oAnimationStart animationstart'; var animationend = 'webkitAnimationEnd mozAnimationEnd oAnimationEnd animationend'; var load = 'load'; var scroll = 'scroll'; var resize = 'resize'; var click = 'click'; var mousewheel = 'onwheel' in document ? 'wheel' : 'onmousewheel' in document ? 'mousewheel' : 'DOMMouseScroll'; var touchstart = 'touchstart'; var touchmove = 'touchmove'; var touchend = 'touchend'; var touch = [touchstart, touchmove, touchend].join(' '); var identifier = 0; var s = {}; var c = {}; var msg = {}; var en = {}; s.name = '.' + name; s.html = 'html'; s.body = 'body'; s.inProgress = '.inProgress'; en.beforeScroll = 'beforeScroll.scrollTo'; en.afterScroll = 'afterScroll.scrollTo'; $.each(s, function(k, v){ if(v.match(/^\./)) c[k] = v.substr(1); }); var m = { init: function(option){ return this.each(function(){ var d; if(!$(this).data(name)){ identifier++; d = {}; d.$target = $(this); d.$scrollTarget = $('html, body'); d.delay = 0; d.duration = 1000; d.easing = 'swing'; d.diff = 0; d = $.extend(true, d, option); d.browser = f.getBrowserInfo(); d.namespace = name + '-' + identifier; d._target = {event: {click: null}}; d._window = {event: {load: null, resize: null, scroll: null}, loaded: false}; d.$scrollTo = $(d.scrollTo); $(this).data(name, d); f.window.init(d); f.body.init(d); f.target.init(d); } }); },//m.init() destroy: function(){ return this.each(function(){ var d = $(this).data(name); var pattern = RegExp('^' + name + '-'); $(window).off([f.window.d.load.event, f.window.d.resize.event, f.window.d.touch.event, f.hash.d.popState.event].join(' ')); d.$sectionInner.off([f.section.d.wheel.event, f.section.d.touch.event, f.section.d.scroll.event].join(' ')); d.$naviIndex.off([f.navi.d.click.event, f.navi.d.hover.event].join(' ')); f.removeAttrs(d.$html.attr('style', ''), pattern, ['class', 'style']); f.removeAttrs(d.$body.attr('style', ''), pattern, ['class', 'style']); f.removeAttrs(d.$viewport.attr('style', ''), pattern, ['class', 'style']); f.removeAttrs(d.$section.attr('style', ''), pattern, ['class', 'style']); d.$section.unwrap(); d.$sectionContents.unwrap(); d.$sectionContents.children().unwrap(); d.$naviWrap.remove(); d.$viewport.removeData(name); }); },//m.destroy() };//m var f = { target: { init: function(d){ if(!d._target.event.click) f.target.click(d); },//f.target.init() click: function(d){ d._target.event.click = f.addNamespaceToEvents(click, d.namespace); d.$target.on(d._target.event.click, function(e){ if(d.$target.hasClass(c.inProgress)) return false; f.window.scrollTo(d); return false; }); }//f.target.clicked() },//f.target window: { init: function(d){ d.$window = $(window); if(!d._window.event.load) f.window.load(d); if(!d._window.event.scroll) f.window.scroll(d); if(!d._window.event.resize) f.window.resize(d); },//f.window.init() load: function(d){ d._window.event.load = f.addNamespaceToEvents(load, d.namespace); d.$window.on(d._window.event.load, function(e){ d._window.loaded = true; }); },//f.window.load() scroll: function(d){ d._window.event.scroll = f.addNamespaceToEvents(scroll, d.namespace); d.$window.on(d._window.event.scroll, function(e){}); },//f.window.scroll() scrollTo: function(d){ d.$target.addClass(c.inProgress); d.$body.addClass(c.name + '-' + c.inProgress); d.$target.trigger($.Event(en.beforeScroll)); d.$scrollTarget.delay(d.delay).animate({ scrollTop: d.$scrollTo[0].offsetTop + d.diff }, d.duration, d.easing, function(){ d.$target.removeClass(c.inProgress); d.$body.removeClass(c.name + '-' + c.inProgress); console.log(d.$scrollTarget.stop(true, false)); d.$target.trigger($.Event(en.afterScroll)); }); },//f.window.scrollTo() resize: function(d){ d._window.event.resize = f.addNamespaceToEvents(resize, d.namespace); d.$window.on(d._window.event.resize, function(e){}); }//f.window.resize() },//f.window body: { init: function(d){ d.$body = $('body'); }//f.body.init() },//f.body addNamespaceToEvents: function(events, namespace, timestamp){ var result = []; events = events.split(' '); if(timestamp != false) namespace += '-' + $.now(); $.each(events, function(i){ result.push(this + '.' + namespace); }); return result.join(' '); },//f.addNamespaceToEvents() isMatchMedia: function(mediaQuery){ return window.matchMedia ? window.matchMedia('(' + mediaQuery + ')').matches : false; },//f.isMatchMedia() setTimer: function(duration){ var deferred = new $.Deferred(); var promise = deferred.promise(); return f.timer(duration, deferred); },//f.setTimer() timer: function(duration, deferred){ var id = setTimeout(function(){ deferred.resolve(); }, duration); deferred.fail(function(){ clearTimeout(id); }); return $.extend(deferred.promise(), { clearTimer: function clearTimer(){ deferred.reject(); return this; } }); },//f.timer() removeAttrs:function($target, pattern, attrs){ $.each(attrs, function(i){ var attr = this; $target.each(function(i){ var $this = $(this); var thisAttr = $this.attr(attr); $.each(thisAttr ? thisAttr.split(' ') : [], function(i){ if(this.match(pattern)) $this.removeClass(this); }); thisAttr = $this.attr(attr); if(!thisAttr) $this.removeAttr(attr); }); }); },//f.removeAttrs() sortObject: function(object, orderBy){ var result = {}; var array = []; var exception = []; for(var key in object){ if(object.hasOwnProperty(key)) array.push(parseInt(key.match(/\d+/)[0])); } array.sort(function(a, b){return orderBy == 'ASC' ? a - b : orderBy == 'DESC' ? b - a : null}); for(var i = 0; i < array.length; i++){ for(var key in object){ if(parseInt(key.match(/\d+/)[0]) == array[i]) result[key] = object[key]; } } return result; },//f.sortObject() typeOf: function(target){ //Object, Array, Function, Error, Date, JSON, Math, RegExp, String, Number, Boolean, Undefined, Null return target === null ? 'Null' : Object.prototype.toString.call(target).slice(8, -1); },//f.typeOf() getBrowserInfo: function(){ //name: chrome, safari, firefox, opera, opera_mini, android_default_browser, facebook, smooz, vivaldi, edge, ie_11, ie_10, ie_9, ie_8, ie_7, ie_6 | device: mac, ipad, iphone, ipod, android, windows, windows_phone var i,e=window.navigator.userAgent.toLowerCase(),n=window.navigator.appVersion.toLowerCase(),d=-1!=e.indexOf("webkit"),f="ontouchstart"in window,o="unknown";return-1!=e.indexOf("msie")||-1!=e.indexOf("trident")?-1!=n.indexOf("msie 6")?o="ie_6":-1!=n.indexOf("msie 7")?o="ie_7":-1!=n.indexOf("msie 8")?o="ie_8":-1!=n.indexOf("msie 9")?o="ie_9":-1!=n.indexOf("msie 10")?o="ie_10":-1!=e.indexOf("trident/7")&&(o="ie_11"):-1!=e.indexOf("webkit")&&-1!=e.indexOf("edge")?o="edge":-1!=e.indexOf("android")&&-1!=e.indexOf("webkit")&&-1!=e.indexOf("version")?o="android_default_browser":-1!=e.indexOf("opr")||-1!=e.indexOf("opera")||-1!=e.indexOf("opios")?o=-1!=e.indexOf("opera mini")?"opera_mini":"opera":-1!=e.indexOf("vivaldi")?o="vivaldi":-1!=e.indexOf("chrome")||-1!=e.indexOf("crios")?o="chrome":-1!=e.indexOf("firefox")||-1!=e.indexOf("fxios")?o="firefox":-1!=e.indexOf("smooz")?o="smooz":-1!=e.indexOf("fban")?o="facebook":-1!=e.indexOf("safari")&&(o="safari"),-1!=e.indexOf("windows")&&-1!=e.indexOf("phone")?i="windows_phone":-1!=e.indexOf("windows")?i="windows":-1!=e.indexOf("iphone")?i="iphone":-1!=e.indexOf("ipad")?i="ipad":-1!=e.indexOf("ipod")?i="ipod":-1!=e.indexOf("mac")?i="mac":-1!=e.indexOf("android")&&(i="android"),{name:o,device:i,isMobile:-1!=e.indexOf("windows")&&-1!=e.indexOf("phone")||-1!=e.indexOf("iphone")||-1!=e.indexOf("ipod")||-1!=e.indexOf("android")&&-1!=e.indexOf("mobile")||-1!=e.indexOf("firefox")&&-1!=e.indexOf("mobile")||-1!=e.indexOf("blackberry"),isTablet:-1!=e.indexOf("windows")&&-1!=e.indexOf("touch")||-1!=e.indexOf("ipad")||-1!=e.indexOf("android")&&-1==e.indexOf("mobile")||-1!=e.indexOf("firefox")&&-1!=e.indexOf("tablet")||-1!=e.indexOf("kindle")||-1!=e.indexOf("silk")||-1!=e.indexOf("playbook"),isTouch:f,isWebkit:d,ua:e} }//f.getBrowserInfo() };//f $.fn[name] = function(method){ if(m[method]){ return m[method].apply(this, Array.prototype.slice.call(arguments, 1)); }else if(typeof method === 'object' || !method){ return m.init.apply(this, arguments); } };//unveil()   }());//scrollTo() $(function(){ var diff = -30; var duration = 600; $('.meisai_details_button_registration, .meisai_details_border_registration img').scrollTo({ scrollTo: '#meisai_details_registration_header', duration: duration, diff: diff }); $('.meisai_details_button_seikyu, .meisai_details_border_seikyu img').scrollTo({ scrollTo: '#meisai_details_seikyu_header', duration: duration, diff: diff }); $('.meisai_details_button_customer, .meisai_details_border_customer img').scrollTo({ scrollTo: '#meisai_details_customer_header', duration: duration, diff: diff }); $('.meisai_details_button_denki, .meisai_details_border_denki img').scrollTo({ scrollTo: '#meisai_details_denki_header', duration: duration, diff: diff }); $('.meisai_details_button_gas, .meisai_details_border_gas img').scrollTo({ scrollTo: '#meisai_details_gas_header', duration: duration, diff: diff }); $('.meisai_details_button_other, .meisai_details_border_other img').scrollTo({ scrollTo: '#meisai_details_other_header', duration: duration, diff: diff }); $('.meisai_details_button_seikyu_2, .meisai_details_border_seikyu_2 img').scrollTo({ scrollTo: '#meisai_details_seikyu_2_header', duration: duration, diff: diff }); $('.meisai_details_button_registration, .meisai_details_border_registration img, .meisai_details_button_seikyu, .meisai_details_border_seikyu img, .meisai_details_button_customer, .meisai_details_border_customer img, .meisai_details_button_denki, .meisai_details_border_denki img, .meisai_details_button_gas, .meisai_details_border_gas img, .meisai_details_button_other, .meisai_details_border_other img, .meisai_details_button_seikyu_2, .meisai_details_border_seikyu_2 img').on('beforeScroll.scrollTo', function(e){ var d = $(this).data('scrollTo'); d.diff = isMatchMedia('max-width: 767px') ? -$('#navFixed').outerHeight() + diff : -$('.hdr_fixedWrap').outerHeight() + diff; }); }); function isMatchMedia(mediaQuery){ return window.matchMedia ? window.matchMedia('(' + mediaQuery + ')').matches : false; };//isMatchMedia() }(jQuery));