solo-skins/nijigen/js/common.min.js

1 line
2.3 KiB
JavaScript

var Skin={_initCommon:function(e){$(window).scroll((function(){$(window).scrollTop()>125?e.show():e.hide(),$(".side .article__toc").length>0&&$(window).width()>768&&($(window).scrollTop()>50?$(".side").css("position","fixed"):$(".side").css("position","initial"))}))},_initAnimation:function(){if(!("IntersectionObserver"in window))return $(".item").addClass("item--active"),!1;window.imageIntersectionObserver?(window.imageIntersectionObserver.disconnect(),$(".item").each((function(){window.imageIntersectionObserver.observe(this)}))):(window.imageIntersectionObserver=new IntersectionObserver((function(e){e.forEach((function(e){if(void 0===e.isIntersecting?0!==e.intersectionRatio:e.isIntersecting)$(e.target).addClass("item--active");else{if(1===$(e.target).closest(".side").length||1===$(e.target).closest("#articlePage").length||$(e.target).outerHeight()>768)return;$(e.target).removeClass("item--active")}}))})),$(".item").each((function(){window.imageIntersectionObserver.observe(this)})))},init:function(){Util.initPjax((function(){Skin._initAnimation()})),Skin._initAnimation(),this._initCommon($(".icon__up")),$(".header__nav a, .header__m a").each((function(){this.href===location.href&&(this.className="current")})).click((function(){$(".header__nav a, .header__m a").removeClass("current"),this.className="current",$(".header__m .module__list").hide()})),$(".header__logo").click((function(){$(".header__nav a, .header__m a").removeClass("current")}))},_initArticleCommon:function(){if($(window).width()>768){if(0===$(".article__toc li").length)return void $(".side").css({height:"auto",position:"initial"});$("#articlePage").width($(".main").width()-310),$(".side").css({right:($(window).width()-$(".main").width())/2,position:"fixed",overflow:"auto",height:$(window).height()-30,top:30}),$(window).scroll(),$(".side").scrollTop(0)}},initArticle:function(){this._initArticleCommon(),setTimeout((function(){0===$("#externalRelevantArticlesWrap li").length&&($("#externalRelevantArticlesWrap").next().remove(),$("#externalRelevantArticlesWrap").remove()),0===$("#relevantArticlesWrap li").length&&($("#relevantArticlesWrap").prev().remove(),$("#relevantArticlesWrap").remove()),0===$("#randomArticlesWrap li").length&&($("#randomArticlesWrap").prev().remove(),$("#randomArticlesWrap").remove())}),1e3)}};Skin.init();