mirror of
https://github.com/the1812/Bilibili-Evolved.git
synced 2025-11-04 21:22:45 +08:00
1 line
3.1 KiB
JavaScript
1 line
3.1 KiB
JavaScript
(()=>{return(i,t)=>{if(isIframe()){return}const n=["/www.bilibili.com"];if(!n.some(i=>document.URL.includes(i))){return}class o{constructor(){this.html=``;this.popupHtml=``;this.flex=`0 0 auto`;this.disabled=false;this.href=``}}class l extends o{constructor(){super();this.flex="1 0 auto";this.disabled=true}}class s extends o{constructor(){super();this.href=`https://www.bilibili.com/`;this.html=`<i class="custom-navbar-iconfont custom-navbar-icon-logo"></i>`}}class c extends o{constructor(i,t){super();this.html=i;this.href=t}}class e extends o{constructor(){super();this.html=`主站`;this.popupHtml=`\n <ul id="custom-navbar-home-popup">\n <li class="category-item" v-for="item of info">\n <a v-bind:href="item[1].link">\n {{item[0]}}<span>{{item[1].count}}</span>\n </a>\n </li>\n </ul>\n `;this.getOnlineInfo().then(i=>{new Vue({el:"#custom-navbar-home-popup",data:{info:Object.entries(i)}})})}async getOnlineInfo(){const i=await Ajax.getJson("https://api.bilibili.com/x/web-interface/online");if(parseInt(i.code)!==0){throw new Error(`[自定义顶栏] 分区投稿信息获取失败: ${i.message}`)}const t=i.data.region_count;await SpinQuery.select("#custom-navbar-home-popup");return{"动画":{count:t[1],link:`https://www.bilibili.com/v/douga/`},"番剧":{count:t[13],link:`https://www.bilibili.com/anime/`},"国创":{count:t[167],link:`https://www.bilibili.com/guochuang/`},"音乐":{count:t[3],link:`https://www.bilibili.com/v/music/`},"舞蹈":{count:t[129],link:`https://www.bilibili.com/v/dance/`},"游戏":{count:t[4],link:`https://www.bilibili.com/v/game/`},"科技":{count:t[36],link:`https://www.bilibili.com/v/technology/`},"数码":{count:t[188],link:`https://www.bilibili.com/v/digital/`},"生活":{count:t[160],link:`https://www.bilibili.com/v/life/`},"鬼畜":{count:t[119],link:`https://www.bilibili.com/v/kichiku/`},"时尚":{count:t[155],link:`https://www.bilibili.com/v/fashion/`},"广告":{count:t[165],link:`https://www.bilibili.com/v/ad/ad/`},"娱乐":{count:t[5],link:`https://www.bilibili.com/v/ent/`},"影视":{count:t[181],link:`https://www.bilibili.com/v/cinephile/`},"放映厅":{count:t[177]+t[23],link:`https://www.bilibili.com/cinema/`},"专栏":{count:``,link:`https://www.bilibili.com/read/home`},"直播":{count:``,link:`https://live.bilibili.com`},"小黑屋":{count:``,link:`https://www.bilibili.com/blackroom/`},"话题":{count:``,link:`https://www.bilibili.com/blackboard/topic_list.html`},"活动":{count:``,link:`https://www.bilibili.com/blackboard/x/act_list`}}}}(async()=>{const n=await t.importAsync("customNavbarHtml");document.body.insertAdjacentHTML("beforeend",n);const o=document.querySelector(".custom-navbar");for(const[t,n]of Object.entries(i.customNavbarSettings)){if(n===true){o.classList.add(t)}}if(i.useDarkStyle){o.classList.add("dark")}const w=[new s,new e,new c("画友","https://h.bilibili.com"),new c("音频","https://www.bilibili.com/audio/home/?type=10"),new c("会员购","https://show.bilibili.com/platform/home.html?msource=pc_web"),new c("漫画","https://manga.bilibili.com"),new l];new Vue({el:o,data:{components:w}})})()}})(); |