v26110482 广场整合:去掉热门话题块,标签为唯一入口+全部话题,选标签露出热门话题;投稿奖励挪到大家在聊上方

This commit is contained in:
deploy
2026-11-05 22:20:55 +00:00
parent 5c497e96af
commit 8505cef14f
4 changed files with 61 additions and 26 deletions

View File

@@ -98,11 +98,11 @@ button{font:inherit;color:inherit;border:0;background:none;padding:0;cursor:poin
@keyframes qfSh{0%,55%{left:-60%}100%{left:130%}}
@media (prefers-reduced-motion:reduce){.qf *,.qf *::before,.qf *::after{animation:none!important}.qf-fly{display:none}}
/* 投稿奖励:热门话题列表头一行 */
.htl .rwl{display:flex;align-items:center;gap:6px;width:100%;margin:6px 0 2px;padding:8px 10px;border-radius:12px;background:linear-gradient(100deg,#FFF1E8,#FFE6E6);text-align:left;font-size:12px;font-weight:700;color:#8A4B36}
.htl .rwl .ic{flex:none;width:16px;height:16px;color:#F2553A}
.htl .rwl span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.htl .rwl em{font-style:normal;color:#F2394A;font-weight:900}
.htl .rwl b{flex:none;font-size:11.5px;color:#F2553A}
.htl .rwl,.rww .rwl{display:flex;align-items:center;gap:6px;width:100%;margin:6px 0 2px;padding:8px 10px;border-radius:12px;background:linear-gradient(100deg,#FFF1E8,#FFE6E6);text-align:left;font-size:12px;font-weight:700;color:#8A4B36}
.htl .rwl .ic,.rww .rwl .ic{flex:none;width:16px;height:16px;color:#F2553A}
.htl .rwl span,.rww .rwl span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.htl .rwl em,.rww .rwl em{font-style:normal;color:#F2394A;font-weight:900}
.htl .rwl b,.rww .rwl b{flex:none;font-size:11.5px;color:#F2553A}
/* ---------- 投稿有奖横幅 ---------- */
.rw{position:relative;display:flex;align-items:center;gap:12px;margin:2px 12px 0;padding:13px 14px;border-radius:18px;overflow:hidden;width:calc(100% - 24px);text-align:left;
@@ -445,6 +445,17 @@ button{font:inherit;color:inherit;border:0;background:none;padding:0;cursor:poin
.gtg{display:flex;flex-wrap:wrap;gap:7px;padding:4px 14px 6px}
.gtg::-webkit-scrollbar{display:none}
.gtg button{flex:none;height:30px;padding:0 13px;border-radius:99px;background:#fff;border:1px solid #EFE1DB;font-size:13px;font-weight:700;color:#5E4E4A;white-space:nowrap}
.gtg .gall{border-style:dashed;color:#B0948D;font-weight:600}
/* 11-05 整合:投稿奖励一行(原在热门话题列表头)+ 选中标签后的热门话题 */
.rww{margin:14px 12px 0}
.rww .rwl{margin:0}
.gtp{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:2px 14px 4px;padding:10px 12px;border-radius:14px;background:#fff;box-shadow:0 6px 16px -14px rgba(120,60,40,.35)}
.gtp[hidden]{display:none}
.gtp-h{font-size:11.5px;font-weight:800;color:#F2553A}
.gtp button{max-width:100%;padding:0;background:none;border:0;text-align:left;font-size:13.5px;font-weight:700;line-height:1.45;color:#3A2C28;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gtp button::after{content:' ›';color:#C9B3AC}
html.night .gtp{background:rgba(255,255,255,.06)}
html.night .gtp button{color:#EFE3EA}
.gtg button.on{background:#F2725B;border-color:#F2725B;color:#fff;box-shadow:0 5px 12px -6px #F2725B}
html.night .gtg button{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12);color:#E8DFE8}
html.night .gtg button.on{background:#F2725B;border-color:#F2725B;color:#fff}
@@ -912,10 +923,10 @@ html.night .gtg button.on{background:#F2725B;border-color:#F2725B;color:#fff}
<div id="sheet" role="dialog" aria-modal="true"><i class="sg"></i><div class="sbd" id="sbd"></div></div>
<div class="toast" id="toast"></div>
<script src="topics.js?v=26110481"></script>
<script src="data.js?v=26110481"></script>
<script src="feed.js?v=26110481"></script>
<script src="../js/ava-pool.js?v=26110481"></script> <!-- 11-05 装饰头像分配表(各模块互不重复) -->
<script src="topics.js?v=26110482"></script>
<script src="data.js?v=26110482"></script>
<script src="feed.js?v=26110482"></script>
<script src="../js/ava-pool.js?v=26110482"></script> <!-- 11-05 装饰头像分配表(各模块互不重复) -->
<script src="ceshi/meta.js?v=26110464"></script>
<script src="../js/share-card.js?v=26110464"></script>
<script src="../js/cm-pics.js?v=26110464"></script> <!-- 11-05 评论 / 回复带图 -->
@@ -986,7 +997,7 @@ html.night .gtg button.on{background:#F2725B;border-color:#F2725B;color:#fff}
var CMD = null, CMERR = false;
/* 头像编码:数字 = av/NNNN.webp(旧代码头像);'av:c012' = av/c012.webp(卡通/可爱卡通);'/…' = 站内绝对路径(内置头像库 /_bridge/avatars/);其余 = assets/img/mom/xxx.jpg */
var avP = function (a) { return typeof a === 'number' ? 'av/' + ('000' + a).slice(-4) + '.webp' : a.indexOf('av:') === 0 ? 'av/' + a.slice(3) + '.webp' : a.charAt(0) === '/' ? a : '../assets/img/mom/' + a + '.jpg'; };
fetch('cm.json?v=26110481').then(function (r) { return r.json(); }).then(function (j) {
fetch('cm.json?v=26110482').then(function (r) { return r.json(); }).then(function (j) {
CMD = j; if (openId && NBY[openId]) { renderComments(NBY[openId]); syncBar(NBY[openId]); }
}).catch(function () { CMERR = true; if (openId && NBY[openId]) renderComments(NBY[openId]); });
function commentsOf(n) {
@@ -1537,10 +1548,33 @@ html.night .gtg button.on{background:#F2725B;border-color:#F2725B;color:#fff}
}
return hot.concat(l.filter(function (t) { return !t.hot; }));
}
/* 选中标签时,标签下一行露出这一类里的 2~3 个热门话题(带 hot 的排前,没帖子的不出),点了进话题页 */
function gtpPaint() {
var bx = document.getElementById('gtp'); if (!bx) return;
var ids = tagF && GTBY[tagF];
if (!ids) { bx.innerHTML = ''; bx.hidden = true; return; }
var tl = hotList().filter(function (x) { return ids.indexOf(x.id) >= 0 && NOTES.some(function (n) { return n.t === x.id; }); }).slice(0, 3);
bx.hidden = !tl.length;
bx.innerHTML = '<span class="gtp-h">热门话题</span>' + tl.map(function (x) { return '<button type="button" data-t="' + x.id + '">#' + esc(x.name) + '#</button>'; }).join('');
}
function renderHead() {
var t = TBY[cur], el = $('#head'), fh = $('#fh');
var fl0 = document.getElementById('luckFl'); if (fl0) fl0.classList.remove('on');
if (catF === 'ceshi') { el.innerHTML = cbnHTML('ceshi') + csLiveHTML(); ceshiFh(fh); csLiveRun(); luckFloat(); return; } /* 原一行介绍 ceshiHead 并进 banner */
if (!t && !catF) {
/* 11-05 用户:「职场那些标签和上面的话题整合到一个里面,感觉有点乱」→ 选方案 A:「全部」下去掉「热门话题」整块,
标签作为唯一入口(末尾加「全部话题 ›」);选中标签时标签下露出这一类的 2~3 个热门话题(用户同意);投稿奖励一行挪到「大家在聊」上面。
话题本身不变:投稿选话题、帖子卡上的 #话题#、话题详情页照旧。分类视图(catF)仍是原来的热门话题列表。 */
el.innerHTML = qifuHTML() +
'<div class="rww"><button type="button" class="rwl" data-rule="1"><svg class="ic"><use href="#i-gift"/></svg><span>投稿被选中得 ' + REWARD + '</span><b>怎么参与 ›</b></button></div>';
fh.className = 'shtg';
fh.innerHTML = '<div class="sh"><h2>大家在聊</h2><small>孕妈们的分享</small></div>' +
'<div class="gtg"><button type="button" data-tag=""' + (tagF ? '' : ' class="on"') + '>全部</button>' +
GTAGS.map(function (g) { return '<button type="button" data-tag="' + g[0] + '"' + (tagF === g[0] ? ' class="on"' : '') + '>' + g[0] + '</button>'; }).join('') +
'<button type="button" class="gall" data-all="1">全部话题 ›</button></div><div class="gtp" id="gtp" hidden></div>';
gtpPaint();
return;
}
if (!t) {
var hl = hotList();
el.innerHTML = (catF ? cbnHTML(catF) : qifuHTML()) + /* 祈福树只在「全部」 */
@@ -1749,10 +1783,11 @@ html.night .gtg button.on{background:#F2725B;border-color:#F2725B;color:#fff}
tagF = gt.dataset.tag; haptic();
var gl = $('#fh .gtg'), sl0 = gl ? gl.scrollLeft : 0;
[].forEach.call(gl.children, function (x) { x.classList.toggle('on', x.dataset.tag === tagF); });
gl.scrollLeft = sl0; renderFeed();
gl.scrollLeft = sl0; gtpPaint(); renderFeed();
var sc0 = $('#sc'), fhT = $('#fh').offsetTop - 8; if (sc0.scrollTop > fhT) sc0.scrollTop = fhT; /* 已经往下滑了的话,回到标签这一行 */
return;
}
if (e.target.closest('[data-all]')) { haptic(); openTopics(); return; }
var tg = e.target.closest('[data-tg]');
if (tg) { tGrp = tg.dataset.tg; haptic(); ceshiFh($('#fh')); renderFeed(); return; }
var b = e.target.closest('[data-t]'); if (!b || b.dataset.t === cur) return;
@@ -1785,7 +1820,7 @@ html.night .gtg button.on{background:#F2725B;border-color:#F2725B;color:#fff}
'<div class="rb"><small>投稿被选中,每篇奖励</small><b>' + REWARD + '</b></div>' +
(t ? '<div class="cur-t">你要参与的话题:<b>#' + esc(t.name) + '#</b></div>' : '') +
'<ol class="stp">' +
'<li><b>选一个话题</b><small>在「热门话题」或「全部话题」里挑你有话说的那个</small></li>' +
'<li><b>选一个话题</b><small>在「大家在聊」标签下的热门话题,或「全部话题」里挑你有话说的那个</small></li>' +
'<li><b>写下你的真实经历</b><small>家里的暖事、踩过的坑、过来人的经验都可以</small></li>' +
'<li><b>编辑挑选,被选中就发奖励</b><small>选中的故事会展示在孕妈广场,奖励发给作者</small></li></ol>' +
'<button type="button" class="sbtn" data-write="' + (t ? t.id : '') + '">写我的故事</button>' +

View File

@@ -107,7 +107,7 @@ main{padding:6px 16px 0}
</div>
<div class="wb"><button type="button" id="write"><svg class="ic" viewBox="0 0 24 24"><path d="M12 20h9M16.5 3.5a2.1 2.1 0 013 3L7 19l-4 1 1-4z"/></svg>写新的故事</button></div>
<script src="../topics.js?v=26110481"></script>
<script src="../topics.js?v=26110482"></script>
<script>
(function () {
'use strict';

View File

@@ -8,8 +8,8 @@
<meta name="apple-mobile-web-app-capable" content="yes">
<title>兜爸心选 · 孕育陪伴</title>
<!-- 11-04 UGC 总开关(孕妈广场 + 测一测,后台 /box_bm/plaza 顶部切换),见 js/ugc.js -->
<script src="js/ugc.js?v=26110481"></script>
<!-- V:26110481 缓存版本标记:改 css/js 时同步 bump 该值(与 js/app.js 的 VER 同源),静态资源按 mtime 走 ETag 自动刷新 -->
<script src="js/ugc.js?v=26110482"></script>
<!-- V:26110482 缓存版本标记:改 css/js 时同步 bump 该值(与 js/app.js 的 VER 同源),静态资源按 mtime 走 ETag 自动刷新 -->
<link rel="stylesheet" href="mama-box.css">
<link rel="stylesheet" href="night.css">
<!-- 11-04 用户:「顶部图片上的倒计时先删除掉」→ 不加载 hero-cd.css / hero-cd.js(文件留着,加回这两行即恢复),头图回到原样式 -->
@@ -2675,13 +2675,13 @@ html.night .rs-pan .rp-card{background:rgba(255,255,255,.06);border-color:rgba(2
<script src="/_bridge/avatar-picker.js?v=26101105"></script>
<script src="/_bridge/hand-icons.js?v=26101202"></script>
<script src="js/zodiac-art.js"></script>
<script src="guangchang/topics.js?v=26110481"></script>
<script src="js/ava-pool.js?v=26110481"></script> <!-- 11-05 装饰头像分配表(各模块互不重复) -->
<script src="guangchang/topics.js?v=26110482"></script>
<script src="js/ava-pool.js?v=26110482"></script> <!-- 11-05 装饰头像分配表(各模块互不重复) -->
<script src="js/app.js"></script>
<script src="js/kit.js?v=26110481"></script>
<script src="js/kit.js?v=26110482"></script>
<!-- 11-05 用户:孕期百问加上跟趣味小测试一样的底部 Tab(孕期百问 / 记一下 / 返回首页)。挂在 #detailQA 里,面板关着时跟着滑出屏外;
「记一下」直接开首页自己的记一下弹层(z 95 盖在百问 z 80 上),「返回首页」= 关掉百问面板 -->
<script src="js/mb-tabbar.js?v=26110481"></script>
<script src="js/mb-tabbar.js?v=26110482"></script>
<script>
(function () {
var d = document.getElementById('detailQA'); if (!d || !window.MBTab) return;
@@ -2701,7 +2701,7 @@ html.night .rs-pan .rp-card{background:rgba(255,255,255,.06);border-color:rgba(2
if (gchDone || !window.__mbUgc) return; gchDone = true;
var m = location.search.match(/[?&]gcv=([1-6])(?:&|$)/);
if (!m) window.__gcDefault = 1;
var n = m ? m[1] : '6', l = document.createElement('link'), s = document.createElement('script'), q = m ? Date.now() : 'v=26110481';
var n = m ? m[1] : '6', l = document.createElement('link'), s = document.createElement('script'), q = m ? Date.now() : 'v=26110482';
var dir = n === '4' || n === '6' ? 'js/gch/' : 'demo/gch/'; /* 11-03 上正式:定稿 V6(含它套的 V4)并进 js/gch/,其余效果稿仍在 demo/ */
l.rel = 'stylesheet'; l.href = dir + 'v' + n + '.css?' + q;
s.src = dir + 'v' + n + '.js?' + q;
@@ -2716,19 +2716,19 @@ html.night .rs-pan .rp-card{background:rgba(255,255,255,.06);border-color:rgba(2
/* 11-02 品牌露出(用户定 4 处都要):默认加载,?brand=0 可关掉对比;11-03 已并进 js/gch/ */
if (!/[?&]brand=0/.test(location.search)) {
var bl = document.createElement('link'), bs = document.createElement('script');
bl.rel = 'stylesheet'; bl.href = 'js/gch/brand.css?v=26110481'; bs.src = 'js/gch/brand.js?v=26110481';
bl.rel = 'stylesheet'; bl.href = 'js/gch/brand.css?v=26110482'; bs.src = 'js/gch/brand.js?v=26110482';
document.head.appendChild(bl); document.body.appendChild(bs);
}
})();
</script>
<!-- 2026-10-03 首页彩蛋:宝宝在肚皮底下动(独立文件,删掉这一行即整体下线;开关在「隐私权限」) -->
<script src="js/bump.js?v=26110481"></script>
<script src="js/bump.js?v=26110482"></script>
<!-- 2026-10-04 首页头图:按孕周换宝宝 + 阳光水波(独立文件) -->
<script src="js/hero-fx.js"></script>
<!-- 2026-10-05 首页头图:宝宝时不时动一动小手小脚(独立文件,删掉这一行即下线) -->
<script src="js/baby-limbs.js?v=26110481"></script>
<script src="js/coach.js?v=26110481"></script>
<script src="js/birth-flow.js?v=26110481"></script>
<script src="js/baby-limbs.js?v=26110482"></script>
<script src="js/coach.js?v=26110482"></script>
<script src="js/birth-flow.js?v=26110482"></script>
<!-- 禁止下拉回弹(2026-10-11 统一规则,与孕期体重同一段):竖向拖动时从手指下往上找还能朝该方向滚的容器,找不到才拦;横滑、双指、可滚列表不受影响 -->
<script>

View File

@@ -244,5 +244,5 @@
}
/* feed.js 首页默认不加载(index.html 只引了 topics.js),这里按需拉一次 */
if (window.GC_FEED) init();
else { var fs = document.createElement('script'); fs.src = 'guangchang/feed.js?v=26110481'; fs.onload = fs.onerror = init; document.body.appendChild(fs); }
else { var fs = document.createElement('script'); fs.src = 'guangchang/feed.js?v=26110482'; fs.onload = fs.onerror = init; document.body.appendChild(fs); }
})();