Files
PC-Light-Forum/sectionV2.html
DESKTOP-RQ919RC\Pc 1a49ba60ce feat(组件): 优化移动端分享功能并调整样式
调整推荐和精华图标高度为25px
为移动端添加点击分享直接复制链接功能
修复itemBottom组件中itemvalue拼写错误
添加响应式布局样式适配不同屏幕尺寸
2025-12-18 18:33:52 +08:00

684 lines
40 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>新加坡 -- 寄托天下</title>
<link rel="stylesheet" href="/css/public.css" />
<link rel="stylesheet" href="/css/section.css" />
<!-- <link rel="stylesheet" href="https://f.gter.net/css/section.css" /> -->
<meta name="description" content="寄托天下留学论坛上查看新加坡版块,新加坡">
<meta name="keywords" content="新加坡, 寄托天下, 留学论坛">
<meta name="author" content="">
<!-- Open Graph / Facebook -->
<meta property="og:type" content="website">
<meta property="og:title" content="新加坡">
<meta property="og:description" content="寄托天下留学论坛上查看新加坡版块,新加坡">
<meta property="og:image" content="">
<!-- Twitter -->
<meta property="twitter:card" content="summary_large_image">
<meta property="twitter:title" content="新加坡">
<meta property="twitter:description" content="寄托天下留学论坛上查看新加坡版块,新加坡">
<meta property="twitter:image" content="">
<!-- 网站图标 -->
<link rel="icon" href="https://www.gter.net/favicon.ico" type="image/x-icon">
<link rel="shortcut icon" href="https://www.gter.net/favicon.ico" type="image/x-icon">
<style>
[v-cloak] {
display: none !important;
}
#pre-loader {
height: 70vh;
display: flex;
justify-content: center;
align-items: center;
}
#pre-loader .three-bounce>div {
display: inline-block;
width: 18px;
height: 18px;
border-radius: 100%;
top: 50%;
margin-top: -9px;
background: #aeadba;
animation: bouncedelay 1.4s infinite ease-in-out;
animation-fill-mode: both;
}
#pre-loader .three-bounce .one {
animation-delay: -0.32s;
}
#pre-loader .three-bounce .two {
animation-delay: -0.16s;
}
@keyframes bouncedelay {
0%,
100%,
80% {
transform: scale(0);
-webkit-transform: scale(0);
}
40% {
transform: scale(1);
-webkit-transform: scale(1);
}
}
</style>
<script type="text/javascript">
var STYLEID = '2',
STATICURL = 'static/',
IMGDIR = 'https://bbs.gter.net/template/archy_plt8/image',
VERHASH = 'Z62',
charset = 'gbk',
discuz_uid = '0',
cookiepre = '4B5x_c0ae_',
cookiedomain = 'gter.net',
cookiepath = '/',
showusercard = '1',
attackevasive = '0',
disallowfloat = '',
creditnotice = ',',
defaultstyle = '',
REPORTURL = 'aHR0cDovL2Jicy5ndGVyLm5ldC9mb3J1bS5waHA/dGlkPTI0MDYzNTYmZ290bz1sYXN0cG9zdA==',
SITEURL = 'https://app.gter.net/',
JSPATH = 'static/js/';
</script>
<script src="https://app.gter.net/bottom?tpl=header&menukey=bbs"></script>
<script src="https://framework.x-php.com/gter/bbs/static/js/common.js" charset="gbk"></script>
</head>
<body>
<script>
window.__ASSET_VERSION__ = 'Z69';
// 判断是否是移动端
window.isMobile = window.innerWidth <= 768;
</script>
<div id="ajaxwaitid"></div>
<div id="append_parent"></div>
<div class="head-top flexacenter" style="width: 1200px;margin: 20px auto 30px;">
<a href="/" class="flexacenter" target="_blank">
<img class="logo" src="https://oss.gter.net/logo" alt="" />
</a>
<div class="flex1"></div>
<div class="input-box flexacenter">
<div class="placeholder">
<div class="placeholder-box" style="transition: transform .3s ease"></div>
</div>
<input class="input flex1" type="text" maxlength="140" /> <img class="icon" onclick="searchEvent()" src="https://framework.x-php.com/gter/forum/img/search-icon.svg?v=vDmK98808ObK" />
<div class="search-box-history">
<div class="search-box-history-title">历史搜索</div>
<div class="search-box-history-list"></div>
</div>
</div>
<div class="post-list flexacenter"> </div>
<div class="sign-in sign-in-no flexacenter"></div>
<div class="head-more flexcenter" onclick="openHeadPop()">
<img class="more-icon" style="width: 18px;height: 15px;" src="https://framework.x-php.com/gter/forum/img/threeAcross.svg?v=vDmK98808ObK" />
</div>
<div class="head-pop" style="display: none;">
<div class="head-more-pop">
<div class="head-more-userinfo flex1 flexacenter">
<div class="head-more-left flexacenter"><img class="head-more-userinfo-avatar" src="" alt="">
<div class="head-more-userinfo-username"></div>
</div>
<div class="head-more-right">
<div class="loginBtn flexcenter" onclick="go_ajax_Login()">登录/注册</div>
</div>
</div>
<div class="tab-list"><a class="tab-item flexacenter" href="https://www.gter.net" target="_blank">寄托首页</a><a class="tab-item flexacenter pitch" href="https://f.gter.net" target="_blank">论坛</a><a class="tab-item flexacenter" href="https://app.gter.net/admissionOfficer" target="_blank">招生官</a><a class="tab-item flexacenter" href="https://bbs.gter.net/thread-2345065-1-1.html" target="_blank">加群</a><a class="tab-item flexacenter" href="https://offer.gter.net" target="_blank">Offer榜</a></div>
<a class="head-more-post flexcenter" href="/publish" target="" onclick="skipLoginUrl(event)">
<div class="head-more-post-icon flexcenter"><img class="head-more-post-img" src="https://framework.x-php.com/gter/forum/img/addyellow.svg?v=vDmK98808ObK" /></div>发布帖子
</a>
<img class="cross-icon" onclick="crossHeadPop()" src="https://framework.x-php.com/gter/forum/img/cross.svg?v=vDmK98808ObK">
</div>
</div>
</div>
<div class="valueA" style="display: none;">https://framework.x-php.com/gter/forum/</div>
<!-- <div id="pre-loader">
<div class="three-bounce" p-id="11">
<div class="one" p-id="12"></div>
<div class="two" p-id="13"></div>
<div class="three" p-id="14"></div>
</div>
</div> -->
<sign-in-box></sign-in-box>
<div class="container" id="sectionIndex">
<div class="templateValue" ref="uniValue">Lz9aimSLXeim</div>
<!-- <head-top></head-top> -->
<div class="head-navigation flexacenter">
<img class="icon" src="https://framework.x-php.com/gter/forum/img/index-icon.png?v=vDmK98808ObK" />
<a class="text textA" target="_blank" href="/">论坛</a>
<img class="arrows" src="https://framework.x-php.com/gter/forum/img/arrows-gray.svg?v=vDmK98808ObK" />
<div class="text" v-cloak>{{ info.name }}</div>
</div>
<div class="matter flexflex">
<div class="sidebar">
<div class="title">论坛版块</div>
<div class="list" style="min-height: 80vh;">
<template v-cloak v-for="(item, index) in sectionList" :key="index">
<div v-if="item.key == 'line'" class="line"></div>
<div v-else class="item flexacenter" :class="{'pitch' : item.uniqid == section}" @click="changeSection(item.uniqid)">
<span class="text">{{ item.name }}</span>
</div>
</template>
</div>
</div>
<div class="matter-content flex1">
<div class="info-box flexflex">
<div class="img-box flexcenter">
<img v-if="info.icon" v-cloak class="img" :src="info.icon" />
</div>
<div class="right flex1" style="min-height: 158px;">
<div class="title vuehide" style="color: transparent;">香港</div>
<div class="title" v-cloak>{{ info.name }}</div>
<div class="link flexacenter">
<div class="vuehide" style="height: 46px;"></div>
<template v-cloak v-for="(item, index) in (info.uniqid == 'Lz9aimSLXeim' ? linkXg : linkOther)" :key="index">
<a v-if="item.url" class="item flexacenter" :href="item.url" target="_blank">
<div class="text">{{ item.name }}</div>
<img class="icon" src="https://framework.x-php.com/gter/forum/img/arrows-circle-red.svg?v=vDmK98808ObK" />
</a>
<div v-else class="item flexacenter">
<div class="text">{{ item.name }}</div>
<img class="icon" src="https://framework.x-php.com/gter/forum/img/arrows-circle-red.svg?v=vDmK98808ObK" />
<div class="QRcode-box flexcenter">
<img class="QRcode-img" :src="item.img" />
<div class="name">{{ item.title }}</div>
<div class="hint">{{ item.hint }}</div>
</div>
</div>
</template>
</div>
<div class="bottom flexacenter">
<div class="data flexacenter" v-cloak>
<div class="sum">{{ count }}</div>
个帖子
</div>
<div class="flex1"></div>
<a class="btn flexcenter" href="/publish" target="_blank" @click="handleCheckAttest">
<img class="icon" src="https://framework.x-php.com/gter/forum/img/pen-icon.png?v=vDmK98808ObK" />
<div class="text">发帖</div>
</a>
</div>
</div>
</div>
<div class="details-box flexflex" ref="detailsRef">
<div class="content-box flex1" ref="contentRef" :style="{'top': matterHeight + 'px'}">
<div class="selectives-box vuehide" style="min-height: 250px;">
<div class="head-top flexcenter" style="margin-top: 0;">
<img class="icon" src="https://framework.x-php.com/gter/forum/img/handpick-icon.png?v=vDmK98808ObK" />
<div class="text">精选</div>
</div>
<div class="list flexflex"></div>
</div>
<div v-cloak class="selectives-box" v-if="handpickList.length > 0">
<div class="head-top flexcenter" style="margin-top: 0;">
<img class="icon" src="https://framework.x-php.com/gter/forum/img/handpick-icon.png?v=vDmK98808ObK" />
<div class="text">精选</div>
</div>
<div class="list flexflex">
<a class="item flexacenter" v-for="(item, index) in handpickList" :key="index" :href="'/details/' + item.uniqid" target="_blank">
<div class="dot"></div>
<div class="text one-line-display">{{ item.title }}</div>
</a>
</div>
</div>
<div class="red-tag vuehide" style="min-height: 250px;">
<div class="title">
热门标签
<img class="icon" src="https://framework.x-php.com/gter/forum/img/triangle-red.svg?v=vDmK98808ObK" />
</div>
<div class="list"></div>
</div>
<div v-cloak class="red-tag" v-if="tagsList.length > 0">
<div class="title">
热门标签
<img class="icon" src="https://framework.x-php.com/gter/forum/img/triangle-red.svg?v=vDmK98808ObK" />
</div>
<div class="list">
<a v-cloak class="item flexacenter" v-for="(item, index) in tagsList" :key="index" :href="'/tag/' + item.tagname" target="_blank">{{ item.tagname }}</a>
</div>
</div>
<div class="list-box">
<div class="item-box item-forum">
<div class="item-head flexacenter">
<div class="user-box flexacenter"><img class="avatar" src="https://nas.gter.net:9008/avatar/97K4EWIMLrsbGTWXsle9W19QEKuOikN42jDKLNjtax7HItxnKMDYSdU9oWFhY2E~/small">
<div class="name">寄托院校君</div>
</div>
<div class="time">12月08日 11:07</div>
<div class="flex1"></div>
<div class="flexacenter" style="position: relative;"></div>
<div class="view flexacenter"><img class="icon" src="https://framework.x-php.com/gter/forum//img/eye-icon.svg">
<div class="text">5574</div>
</div>
<div class="btn flexcenter"><img class="icon" src="https://framework.x-php.com/gter/forum//img/dot-dot-dot-gray.png"></div> <!--v-if-->
</div>
<div class="label flexflex"><a class="item icon" target="_blank" href="/recommend"><img src="https://framework.x-php.com/gter/forum//img/recommend-icon.png" style="height: 24px;"></a> <!--v-if--> <a class="item blue" href="/section/Lz9aimSLXeim" target="_blank">香港</a><a class="item blue" href="/section/MjNk2SbRt4Wa" target="_blank">其它地区</a><a class="item blue" href="/section/qvL9GXnL9b80" target="_blank">招生官</a> <a class="item" href="/tag/硕士" target="_blank">硕士</a><a class="item" href="/tag/资讯速递" target="_blank">资讯速递</a><a class="item" href="/tag/商学与管理学类" target="_blank">商学与管理学类</a><a class="item" href="/tag/2026" target="_blank">2026</a><a class="item" href="/tag/选校定位" target="_blank">选校定位</a></div><!--v-if--> <a class="title" href="/details/8iqqzrau5vD8" target="_blank">12.16 19:00 | 跨学科设计,知识与实践并行!港理工 商业管理理学硕士课程 线上宣讲会等你了解!</a> <a class="message two-line-display" href="/details/8iqqzrau5vD8" target="_blank">香港理工大学香港理工大学是一所世界顶尖大学在2026..</a> <a class="picture flexacenter" href="/details/8iqqzrau5vD8" target="_blank"><img class="picture-item" src="https://o.x-php.com/Zvt57TuJSUvkyhw-xG_Y2l-U_pstdnqE1NFX9ddrB_WbUWy8K_hyVFweFrPD7IZK4sVMX2_Ct1vu9Fkg0jQ0Mjk~" alt=""><img class="picture-item" src="https://o.x-php.com/Zvt57TuJSUvkyhw-xG_Y2l-U_pstdnqF1NFX9ddrB_WbUWy8K_hyVFweFrPD7IZK4sVMAjrN5ga79Fkg0jQ0Mjk~" alt=""><img class="picture-item" src="https://o.x-php.com/Zvt57TuJSUvkyhw-xG_Y2l-U_pstdnuB1NFX9ddrB_WbUWy8K_hyVFweFrPD7IZK4sVMDWnC5Qbo9Fkg0jQ0Mjk~" alt=""><img class="picture-item" src="https://o.x-php.com/Zvt57TuJSUvkyhw-xG_Y2l-U_pstdnqC1NFX9ddrB_WbUWy8K_hyVFweFrPD7IZK4sVMDzqQ4li89Fkg0jQ0Mjk~" alt=""><img class="picture-item" src="https://o.x-php.com/Zvt57TuJSUvkyhw-xG_Y2l-U_pstdnqD1NFX9ddrB_WbUWy8K_hyVFweFrPD7IZK4sVMCWvCtlzt9Fkg0jQ0Mjk~" alt=""> </a> <!--v-if-->
<div class="bottom flexacenter">
<div class="bottom-item like flexacenter">
<img class="icon" src="https://framework.x-php.com/gter/forum//img/like-icon.png">
<div class="text"></div>
</div>
<div class="bottom-item flexacenter">
<img class="icon" src="https://framework.x-php.com/gter/forum//img/collect-gray.png">
<div class="text">收藏</div>
</div>
<a class="bottom-item flexacenter" href="/details/8iqqzrau5vD8" target="_blank">
<img class="icon" src="https://framework.x-php.com/gter/forum//img/discuss-icon.png">
<div class="text">讨论</div>
</a>
<a class="bottom-item flexacenter" href="/details/8iqqzrau5vD8" target="_blank">
<img class="icon" src="https://framework.x-php.com/gter/forum//img/bi-copper-icon.png">
<div class="text">投币</div>
</a>
<div class="bottom-item share flexacenter">
<img class="icon" src="https://framework.x-php.com/gter/forum//img/share-gray.png" style="width: 19px; height: 19px;">
<div class="text">转发</div>
<div class="share-box flexcenter">
<div class="share-item flexcenter">
<img class="share-icon" src="https://framework.x-php.com/gter/forum//img/copy-black-icon.png">
<div class="text">复制链接</div>
</div>
<div class="share-item wenxin flexcenter"><img class="share-icon" src="https://framework.x-php.com/gter/forum//img/weixin-icon.png">
<div class="text">微信转发</div>
<div class="QRcode-box flexcenter">
<div class="QRcode flexcenter"><img class="load" src="https://framework.x-php.com/gter/forum//img/load-icon.svg"></div>
<div class="text">微信扫码</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- <template v-for="(item,index) in list" :key="index">
<item-forum v-if="item.type == 'thread'" :itemdata="item"></item-forum>
<item-offer v-if=" item.type == 'offer'" :itemdata="item"></item-offer>
<item-summary v-else-if="item.type == 'offer_summary'" :itemdata="item"></item-summary>
<item-vote v-else-if="item.type == 'vote'" :itemdata="item"></item-vote>
<item-mj v-else-if="item.type == 'interviewexperience'" :itemdata="item"></item-mj>
<item-tenement v-else-if="item.type == 'tenement'" :itemdata="item"></item-tenement>
<item-project v-else-if="item.type == 'programs' || tabValue == 'xg'" :itemdata="item"></item-project>
<item-forum v-else :itemdata="item"></item-forum>
</template> -->
<load-box :loading="loading"></load-box>
</div>
<div v-cloak v-if="list.length == 0 && page == 0" class="empty flexcenter">
<img class="empty-icon" src="https://framework.x-php.com/gter/forum/img/empty-icon.png?v=vDmK98808ObK" />
<div class="empty-text">- 暂无内容 -</div>
</div>
</div>
<div class="sidebar-box" ref="sidebarRef" :style="{'top': sidebarHeight + 'px'}">
<!-- <a class="adv" href="https://demo.gter.net/admin" target="_blank">
<img class="adv-icon" src="https://o.x-php.com/bbs/common/cf/1709075xdbbbvjd8cbxvdd.jpg" alt="26Fall祈福求offer得offer" />
</a>
<a class="adv" href="https://demo.gter.net/admin" target="_blank">
<img class="adv-icon" src="https://o.x-php.com/bbs/common/cf/1709075xdbbbvjd8cbxvdd.jpg" alt="26Fall祈福求offer得offer" />
</a> -->
<!-- offer -->
<div class="offer-side-box side-box" v-if="offer.length != 0">
<div class="side-header flexacenter">
<div class="left flexacenter">
<img class="header-icon" src="https://framework.x-php.com/gter/forum/img/offer-index-icon.png?v=vDmK98808ObK" />
<div class="title">Offer</div>
</div>
<a class="more flexacenter" href="https://offer.gter.net" target="_blank">
<span>more</span>
<img class="more-icon" src="https://framework.x-php.com/gter/forum/img/right-arrow-black.svg?v=vDmK98808ObK" />
</a>
</div>
<div class="box" style="min-height: 100px;">
<a class="item flexflex" v-cloak v-for="item in offer" :key="item" :href="'/details/' + item['uniqid']" target="_blank">
<img class="school-img" :src="item.data['schoollogo']" />
<div class="school-detail flex1 flexflex">
<div class="school-name one-line-display">{{ item.data['schoolname'] }}</div>
<div class="school-brief one-line-display">{{ item.data['professional'] }}</div>
<div class="school-offer flexacenter">
<span>{{ item.data['degree'] }}</span>
<span class="long-string">|</span>
<span>{{ item.data['semester'] }}</span>
<span class="long-string">|</span>
<span>{{ item.data['apply_results_text'] }}</span>
</div>
</div>
</a>
<a class="add-btn flexcenter" @click="handleCheckAttest" style="position: relative" href="https://offer.gter.net/post" target="_blank" v-cloak>
<img class="add-icon" src="https://framework.x-php.com/gter/forum/img/add-btn-black.svg?v=vDmK98808ObK" />
<div>报Offer</div>
<div v-if="realname == 0 && userInfo.uin > 0" class="open-attest-btn" @click.prevent="openAttest"></div>
</a>
</div>
</div>
<!-- vote -->
<div class="vote-side-box side-box" v-if="vote.length != 0">
<div class="side-header flexacenter">
<div class="left flexacenter">
<img class="header-icon" src="https://framework.x-php.com/gter/forum/img/vote-index-icon.png?v=vDmK98808ObK" />
<div class="title">投票</div>
</div>
<a class="more flexacenter" target="_blank" href="https://vote.gter.net">
<span>more</span>
<img class="more-icon" src="https://framework.x-php.com/gter/forum/img/right-arrow-black.svg?v=vDmK98808ObK" />
</a>
</div>
<div class="box" style="min-height: 100px;">
<a class="item flexflex" v-cloak v-for="item in vote" :key="item" target="_blank" :href="'/details/' + item['uniqid']">
<div class="name one-line-display">{{item['title']}}</div>
<div class="brief">{{ item['content'] }}</div>
</a>
<a class="add-btn flexcenter" @click="handleCheckAttest" style="position: relative" v-cloak target="_blank" href="https://vote.gter.net/publish">
<img class="add-icon" src="https://framework.x-php.com/gter/forum/img/add-btn-black.svg?v=vDmK98808ObK" />
<div>发起投票</div>
<div v-if="realname == 0 && userInfo.uin > 0" class="open-attest-btn" @click.prevent="openAttest"></div>
</a>
</div>
</div>
<!-- mj -->
<div class="interviewexperience-side-box side-box" v-if="interviewexperience.length != 0">
<div class="side-header flexacenter">
<div class="left flexacenter">
<img class="header-icon" src="https://framework.x-php.com/gter/forum/img/mj-index-icon.png?v=vDmK98808ObK" />
<div class="title">面经</div>
</div>
<a class="more flexacenter" href="https://interviewexperience.gter.net/" target="_blank">
<span>more</span>
<img class="more-icon" src="https://framework.x-php.com/gter/forum/img/right-arrow-black.svg?v=vDmK98808ObK" />
</a>
</div>
<div class="box" style="min-height: 100px;">
<a class="item flexflex" v-cloak v-for="(item,index) in interviewexperience" :key="item" :href="'/details/' + item['uniqid']" target="_blank">
<div class="school one-line-display">{{ item.data['schoolname'] }}</div>
<div class="major one-line-display">{{ item.data['profession'] || item.data['project'] }}</div>
<div class="info">
<img class="icon" :src="item.user['avatar']" />
<span class="text">{{ item['content'] }}</span>
</div>
</a>
<a class="add-btn flexcenter" @click="handleCheckAttest" style="position: relative" href="https://interviewexperience.gter.net/publish" target="_blank" v-cloak>
<img class="add-icon" src="https://framework.x-php.com/gter/forum/img/add-btn-black.svg?v=vDmK98808ObK" />
<div>写面经</div>
<div v-if="realname == 0 && userInfo.uin > 0" class="open-attest-btn" @click.prevent="openAttest"></div>
</a>
</div>
</div>
<!-- newest 最新 -->
<latest-list boxtype="newest"></latest-list>
<latest-list boxtype="essence"></latest-list>
</div>
</div>
</div>
</div>
</div>
<script src="https://framework.x-php.com/gter/forum/js/vue.global.js?v=vDmK98808ObK"></script>
<script src="https://framework.x-php.com/gter/forum/js/axios.min.js?v=vDmK98808ObK"></script>
<script src="https://framework.x-php.com/gter/forum/js/public.js?v=vDmK98808ObK"></script>
<!-- <script src="https://f.gter.net/js/public.js"></script> -->
<script type="module" src="https://framework.x-php.com/gter/forum/js/section.js?v=vDmK98808ObK"></script>
<!-- <script type="module" src="https://f.gter.net/js/section.js"></script> -->
<script type="module" src="https://framework.x-php.com/gter/forum/../image/gter/commonCom/sign-in/sign-in.js?v=vDmK98808ObK"></script>
<script src="https://app.gter.net/bottom?tpl=footer,popupnotification"></script>
<script>
console.log(location.href.indexOf('details') != -1);
if (location.href.indexOf('details') != -1) {
const postList = document.querySelector('.head-top .post-list')
postList.innerHTML = `<a href="/publish" target="_blank" style="margin-right: 10px"> <img class="post-item" src="https://framework.x-php.com/gter/forum/img/post-thread.png?v=vDmK98808ObK" /> </a> <a href="https://offer.gter.net/post" target="_blank" style="margin-right: 10px"> <img class="post-item" src="https://framework.x-php.com/gter/forum/img/post-offer.png?v=vDmK98808ObK" /> </a> <a href="https://offer.gter.net/post/summary" target="_blank" style="margin-right: 10px"> <img class="post-item" src="https://framework.x-php.com/gter/forum/img/post-summary.png?v=vDmK98808ObK" /> </a> <a href="https://interviewexperience.gter.net/publish" target="_blank" style="margin-right: 10px"> <img class="post-item" src="https://framework.x-php.com/gter/forum/img/post-mj.png?v=vDmK98808ObK" /> </a> <a href="https://vote.gter.net/publish" target="_blank"> <img class="post-item" src="https://framework.x-php.com/gter/forum/img/post-vote.png?v=vDmK98808ObK" /> </a>`
console.log(postList);
postList.style.display = 'flex'
} else if (location.href.indexOf('search') != -1) {
const box = document.querySelector(".head-top")
box.querySelector(".input-box").style.display = "none"
box.querySelector(".sign-in").style.display = "none"
} else if (location.href.indexOf("publish") != -1) {
const box = document.querySelector(".head-top")
if (box) document.body.removeChild(box)
} else {
const signIn = document.querySelector('.head-top .sign-in')
signIn.innerHTML = `<div class="sign-in-no-box" onclick="headSignIn()">
<img class="sign-in-bj" src="https://framework.x-php.com/gter/forum/img/sign-in-bj.svg?v=vDmK98808ObK" /><img class="coin-bj" src="https://framework.x-php.com/gter/forum/img/coin-bj.svg?v=vDmK98808ObK" />
<img class="coin-icon" src="https://framework.x-php.com/gter/forum/img/coin-icon.png?v=vDmK98808ObK" /><span class="text flex1">签到领寄托币</span>
<div class="sign-go flexcenter">
<img class="sign-go-bj" src="https://framework.x-php.com/gter/forum/img/sign-go.svg?v=vDmK98808ObK" /> GO
</div>
<img class="petal1" src="https://framework.x-php.com/gter/forum/img/petal1.png?v=vDmK98808ObK" />
<img class="petal2" src="https://framework.x-php.com/gter/forum/img/petal2.png?v=vDmK98808ObK" />
<img class="petal3" src="https://framework.x-php.com/gter/forum/img/petal3.png?v=vDmK98808ObK" />
</div>
<div class="sign-in-already-box">
<img class="sign-icon" src="https://framework.x-php.com/gter/forum/img/sign-icon.png?v=vDmK98808ObK" />
<span>已签到,明天再来</span>
</div>`
signIn.style.display = 'flex'
let userInfoWinTimerCount = 0;
const userInfoWinTimer = setInterval(() => {
if (location.host == "127.0.0.1:5501") return;
if (todaysignedState) {
clearInterval(userInfoWinTimer);
if (todaysigned == 1) {
signIn.classList.add('sign-in-already')
signIn.classList.remove("sign-in-no");
}
}
userInfoWinTimerCount++;
if (userInfoWinTimerCount >= 3000) clearInterval(userInfoWinTimer);
}, 50);
}
function headSignIn() {
SignInComponent.initComponent();
}
const searchInput = document.querySelector('.head-top .input')
// 绑定 blur 和 focus 事件
if (searchInput) {
searchInput.addEventListener('blur', function () {
setTimeout(() => {
const historyBox = document.querySelector('.head-top .search-box-history')
if (historyBox) historyBox.style.display = 'none'
}, 300);
const inputBox = document.querySelector('.head-top .input-box')
if (inputBox) inputBox.classList.remove('pitch')
startCarousel();
})
searchInput.addEventListener('focus', () => {
const historyBox = document.querySelector('.head-top .search-box-history')
const historyItem = historyBox.querySelectorAll(".search-box-history-item")
if (historyBox && historyItem.length > 0) historyBox.style.display = 'block'
const inputBox = document.querySelector('.head-top .input-box')
if (inputBox) inputBox.classList.add('pitch')
if (carouselTimer) clearInterval(carouselTimer);
})
// 绑定回车事件
searchInput.addEventListener('keydown', (e) => {
if (e.key == 'Enter') searchEvent()
})
searchInput.addEventListener('input', (e) => {
const value = e.target.value || ''
const placeholder = document.querySelector(".head-top .placeholder")
if (value) placeholder.style.display = 'none'
else placeholder.style.display = 'block'
})
}
let historySearchList = []
// 获取历史搜索
const getHistorySearch = () => {
const data = JSON.parse(localStorage.getItem("history-search")) || [];
historySearchList = data;
let itemAll = ``
data.forEach((item, index) => itemAll += `<div class="search-box-history-item one-line-display" onclick="searchEvent('${item}')">${item}</div>`) // 绑定事件 searchEvent 点击搜索)
const historyList = document.querySelector('.search-box-history-list')
historyList.innerHTML = itemAll
};
if (location.href.indexOf("/publish") == -1 && location.href.indexOf("/search") == -1) getHistorySearch();
const searchEvent = (value) => {
if (window.innerWidth <= 480) {
redirectToExternalWebsite("/search");
return
}
const kw = value || searchInput.value || hotSearchWords[currentIndex]?.keyword || "";;
if (!kw) return;
historySearchList.unshift(kw);
historySearchList = [...new Set(historySearchList)];
if (historySearchList.length > 10) historySearchList = historySearchList.splice(0, 10);
localStorage.setItem("history-search", JSON.stringify(historySearchList));
redirectToExternalWebsite("/search/" + kw);
searchInput.value = ""
}
let hotSearchWords = [];
const renderingPlaceholder = () => {
let itemAll = ``
hotSearchWords.forEach(item => {
itemAll += `<div class="item one-line-display" >大家都在搜:${item.keyword}</div>`
})
const sliceHotSearchWords = hotSearchWords.slice(0, 2)
sliceHotSearchWords.forEach(item => {
itemAll += `<div class="item one-line-display" >大家都在搜:${item.keyword}</div>`
})
const placeholderBox = document.querySelector('.placeholder .placeholder-box')
placeholderBox.innerHTML = itemAll
}
const getWConfigg = () => {
ajaxGet("/v2/api/config/website").then((res) => {
if (res.code == 200) {
let data = res["data"] || {};
hotSearchWords = data.hotSearchWords || [];
renderingPlaceholder()
data.time = new Date().toISOString();
localStorage.setItem("wConfig", JSON.stringify(data));
}
});
};
const checkWConfig = () => {
const wConfig = JSON.parse(localStorage.getItem("wConfig")) || {};
if (wConfig.time) {
const time = new Date(wConfig.time);
const now = new Date();
if (now - time > 24 * 60 * 60 * 1000) getWConfigg();
else {
hotSearchWords = wConfig.hotSearchWords || [];
renderingPlaceholder()
}
} else getWConfigg();
};
checkWConfig()
const renderCurrentIndex = () => {
const placeholderBox = document.querySelector('.placeholder .placeholder-box')
if (placeholderBox) placeholderBox.style.transform = `translateY(${-currentIndex * 36}px)`
}
let currentIndex = 0; // 当前显示的关键词索引
let carouselTimer = null; // 轮播定时器
// 启动轮播函数
const startCarousel = () => {
// 清除已有的定时器
if (carouselTimer) clearInterval(carouselTimer);
// 设置新的定时器,每秒滚动一次
carouselTimer = setInterval(() => {
if (hotSearchWords.length > 1) {
if (currentIndex >= hotSearchWords.length - 1) {
currentIndex++;
setTimeout(() => {
currentIndex = 0;
}, 2300);
} else currentIndex++;
}
renderCurrentIndex()
}, 2300);
};
startCarousel();
const openHeadPop = () => {
if (window["userInfoWin"]?.uin > 0 || window["userInfoWin"]?.uid > 0) {
// 登录
const headMoreLeft = document.querySelector(".head-pop .head-more-left")
headMoreLeft.innerHTML = `<img class="head-more-userinfo-avatar" src="${window["userInfoWin"]?.avatar}" alt=""><div class="head-more-userinfo-username">${window["userInfoWin"]?.nickname}</div>`
} else {
const avatar = document.querySelector(".head-pop .head-more-userinfo-avatar")
avatar.src = "/img/defaultAvatar.png"
const headMoreRight = document.querySelector(".head-pop .head-more-right")
headMoreRight.style.display = "block"
}
document.querySelector(".head-pop").classList.add("head-pop-show");
}
const skipLoginUrl = (e) => {
if (window["userInfoWin"]?.uin > 0 || window["userInfoWin"]?.uid > 0) { }
else {
e.preventDefault();
go_ajax_Login();
}
}
const crossHeadPop = () => document.querySelector(".head-pop").classList.remove("head-pop-show");
</script>
</body>
</html>