v26110264 预览:孕期百宝箱独立成模块+下方 6 条列表;孕妈广场「其他孕妈也在搜」改为广场热门 6 话题;修话题页底部引导报错
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -231,5 +231,5 @@
|
||||
}
|
||||
/* feed.js 首页默认不加载(index.html 只引了 topics.js),这里按需拉一次 */
|
||||
if (window.GC_FEED) init();
|
||||
else { var fs = document.createElement('script'); fs.src = 'guangchang/feed.js?v=26110263'; fs.onload = fs.onerror = init; document.body.appendChild(fs); }
|
||||
else { var fs = document.createElement('script'); fs.src = 'guangchang/feed.js?v=26110264'; fs.onload = fs.onerror = init; document.body.appendChild(fs); }
|
||||
})();
|
||||
|
||||
56
js/gch/v6.js
56
js/gch/v6.js
@@ -6,9 +6,9 @@
|
||||
(function () {
|
||||
var sec = document.getElementById('gcHome');
|
||||
if (!sec) return;
|
||||
var l = document.createElement('link'); l.rel = 'stylesheet'; l.href = 'js/gch/v4.css?v=26110263';
|
||||
var l = document.createElement('link'); l.rel = 'stylesheet'; l.href = 'js/gch/v4.css?v=26110264';
|
||||
document.head.appendChild(l);
|
||||
var s = document.createElement('script'); s.src = 'js/gch/v4.js?v=26110263';
|
||||
var s = document.createElement('script'); s.src = 'js/gch/v4.js?v=26110264';
|
||||
s.onload = function () { if (sec.querySelector('.g4-foot')) merge(); else sec.addEventListener('gc4-ready', merge, { once: true }); }; /* v4 要先拉 feed.js 才渲染 */
|
||||
document.body.appendChild(s);
|
||||
|
||||
@@ -23,8 +23,9 @@
|
||||
var box = document.createElement('div');
|
||||
box.className = 'g6-ms';
|
||||
box.innerHTML =
|
||||
'<div class="g6-mh"><h3 class="g6-mt"><span>其他孕妈也在搜</span></h3>' +
|
||||
'<span class="ms-live" aria-hidden="true">' + FIRE.replace('currentColor', 'currentColor') + '实时热搜</span>' +
|
||||
/* 11-03 用户:孕妈广场下面的「其他孕妈也在搜」改成广场里大家关注的 6 个话题,点了直接进该话题(问题库那份挪去「孕期百宝箱 → 孕期百问」) */
|
||||
'<div class="g6-mh"><h3 class="g6-mt"><span>大家都在关注</span></h3>' +
|
||||
'<span class="ms-live" aria-hidden="true">' + FIRE.replace('currentColor', 'currentColor') + '广场热议</span>' +
|
||||
'</div>' +
|
||||
'<div class="ms-list g6-list"></div>' +
|
||||
'<button type="button" class="ms-all g6-all hide"></button>';
|
||||
@@ -72,33 +73,26 @@
|
||||
if (/[?&]qzcard=1(?:&|$)/.test(location.search)) sec.insertBefore(qz, foot);
|
||||
var list = box.querySelector('.g6-list'), all = box.querySelector('.g6-all');
|
||||
var tot = (window.__mbPulse && window.__mbPulse.total && +window.__mbPulse.total.value) || 1510000;
|
||||
/* 11-02 按孕周出题:挑题逻辑在 app.js(window.__mbQaPick:第 1 条固定生娃计算器 + 本孕周段 4 条 + 通用 1 条),孕期数据到了(mb-preg)再刷一次 */
|
||||
var BANK = null;
|
||||
function paintList() {
|
||||
if (!BANK || !BANK.length) return;
|
||||
var pg = window.__mbPreg || {}, w = pg.week || 0;
|
||||
var tag = box.querySelector('.g6-wk');
|
||||
if (w) { if (!tag) { tag = document.createElement('span'); tag.className = 'g6-wk'; box.querySelector('.g6-mh').appendChild(tag); } tag.textContent = '孕 ' + w + ' 周'; }
|
||||
else if (tag) tag.remove();
|
||||
var pick = window.__mbQaPick ? window.__mbQaPick(BANK, w) : BANK.slice(0, 6);
|
||||
list.innerHTML = pick.map(function (x, i) {
|
||||
var n = tot * (+x.heat || 0), heat = x.heat ? '<span class="ms-h">' + FIRE + '<b>' + (n >= 1e4 ? Math.round(n / 1e3) / 10 + '万' : Math.round(n)) + ' 人看过</b></span>' : '';
|
||||
var b = window.__mbMsBadge ? window.__mbMsBadge(i) : { t: x.badge, c: x.badge === '爆' ? 'bao' : '' };
|
||||
var bd = b.t ? '<span class="ms-bd ' + b.c + '">' + (b.c === 'bao' ? FIRE_W : '') + esc(b.t) + '</span>' : '';
|
||||
return '<a class="ms-it ripple" href="' + esc((x.href || '') + location.search + location.hash) + '"><i class="ms-no">' + (i + 1) + '</i>' +
|
||||
'<span class="ms-m"><span class="ms-q">' + esc(x.q) + '</span>' + heat + '</span>' + bd + '<i class="ms-go">›</i></a>';
|
||||
}).join('');
|
||||
/* 6 个话题 = 广场「全部」页「热门话题」前 6(同 guangchang/index.html hotList:带 hot 的三块轮流排 —— 家庭婚姻 / 职场 / 经验) */
|
||||
function hot6() {
|
||||
var T = window.GC_TOPICS || [], hot = T.filter(function (t) { return t.hot; }), by = ['family', 'work', 'baby'].map(function (c) { return hot.filter(function (t) { return t.cat === c; }); }), rr = [];
|
||||
for (var r = 0; r < 10; r++) by.forEach(function (x) { if (x[r]) rr.push(x[r]); });
|
||||
return rr.concat(T.filter(function (t) { return !t.hot; })).slice(0, 6);
|
||||
}
|
||||
window.addEventListener('mb-preg', paintList);
|
||||
fetch('assets/data/qa/hot.json?' + Date.now()).then(function (r) { return r.ok ? r.json() : []; }).catch(function () { return []; }).then(function (bank) {
|
||||
if (!bank || !bank.length) { box.style.display = 'none'; return; }
|
||||
BANK = bank; paintList();
|
||||
if (bank.length > 6) {
|
||||
all.textContent = '查看全部问题 ›';
|
||||
all.classList.remove('hide');
|
||||
/* 全部问题页在 app.js 里(openQA),借原来那块的「查看全部」按钮触发 */
|
||||
all.addEventListener('click', function () { var o = document.getElementById('msAll'); if (o) o.click(); });
|
||||
}
|
||||
});
|
||||
function paintList() {
|
||||
var l6 = hot6();
|
||||
if (!l6.length) { box.style.display = 'none'; return; }
|
||||
list.innerHTML = l6.map(function (x, i) {
|
||||
var n = x.talk || 0, heat = '<span class="ms-h">' + FIRE + '<b>' + (n >= 1e4 ? Math.round(n / 1e3) / 10 + '万' : n) + ' 人在聊</b></span>'; /* 在聊人数是 topics.js 的占位数,同广场页 */
|
||||
var b = window.__mbMsBadge ? window.__mbMsBadge(i) : { t: '', c: '' };
|
||||
var bd = b.t ? '<span class="ms-bd ' + b.c + '">' + (b.c === 'bao' ? FIRE_W : '') + esc(b.t) + '</span>' : '';
|
||||
return '<a class="ms-it ripple" href="' + esc('guangchang/?t=' + encodeURIComponent(x.id) + location.hash) + '"><i class="ms-no">' + (i + 1) + '</i>' +
|
||||
'<span class="ms-m"><span class="ms-q">#' + esc(x.name) + '#</span>' + heat + '</span>' + bd + '<i class="ms-go">›</i></a>';
|
||||
}).join('');
|
||||
all.textContent = '查看全部话题 ›';
|
||||
all.classList.remove('hide');
|
||||
}
|
||||
all.addEventListener('click', function () { location.href = 'guangchang/' + location.search + location.hash; });
|
||||
paintList();
|
||||
}
|
||||
})();
|
||||
|
||||
Reference in New Issue
Block a user