悄悄话改为广场信息流置顶笔记(首页不放);?wh=1 直接盖上星空页、关掉回广场;v26110608

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
deploy
2026-11-07 01:52:11 +00:00
parent 884732c0a9
commit aee7371535
7 changed files with 98 additions and 97 deletions

View File

@@ -3,7 +3,7 @@
(function () {
'use strict';
/* 页面版本号(YYMMDD+序号):显示在「关于兜爸心选」页底部;bump 时同步 head 注释与 ?v= */
var VER = '26110607';
var VER = '26110608';
const $ = (s, c) => (c || document).querySelector(s);
const $$ = (s, c) => Array.from((c || document).querySelectorAll(s));
@@ -4806,6 +4806,7 @@
function closePage() {
stopAll();
drawer(false);
if (fromPlaza) { fromPlaza = false; history.back(); return; } /* 从广场置顶笔记来的:回广场 */
page.classList.remove('show');
page.setAttribute('aria-hidden', 'true');
}
@@ -4826,7 +4827,7 @@
.then(r => (r.ok ? r.json() : null))
.then(j => {
const r = j && j.code === 200 && j.result;
if (!r || !r.show || !(r.list || []).length) { data = null; show(false); return; }
if (!r || !r.show || !(r.list || []).length) { data = null; show(false); autoFail(); return; }
data = r;
const ns = r.list.map(x => x.id + ':' + x.hugs + (x.hugged ? 'h' : '')).join('|');
if (ns !== sig) {
@@ -4838,13 +4839,30 @@
show(true);
if (autoOpen) { autoOpen = false; openPage(); }
})
.catch(() => { if (!silent) show(false); });
.catch(() => { if (!silent) show(false); autoFail(); });
}
/* 2026-11-07 孕妈广场页的悄悄话条点了跳回首页带 ?wh=1 → 数据回来直接打开星空页;参数用完就去掉,刷新不再弹 */
let autoOpen = /[?&]wh=1(?:&|$)/.test(location.search);
if (autoOpen && history.replaceState) {
const q = new URLSearchParams(location.search); q.delete('wh');
history.replaceState(history.state, '', location.pathname + (q.toString() ? '?' + q : '') + location.hash);
/* 2026-11-07 孕妈广场信息流的置顶笔记「孕妈悄悄话」点了跳到首页带 ?wh=1 → 直接打开星空页:
· 星空页先空着盖上来(不露首页),孕周取广场也在用的 mmbox.gcwk.v1,马上拉数据,不等「此刻」;
· 参数用完就去掉,刷新不再弹;从广场来的,关掉星空页 = 浏览器返回,回到广场;
· 拉不到 → 提示一句再回广场。 */
let autoOpen = /[?&]wh=1(?:&|$)/.test(location.search), fromPlaza = false;
if (autoOpen) {
fromPlaza = /\/guangchang\//.test(document.referrer || '') && history.length > 1;
if (history.replaceState) {
const q = new URLSearchParams(location.search); q.delete('wh');
history.replaceState(history.state, '', location.pathname + (q.toString() ? '?' + q : '') + location.hash);
}
page.classList.add('show');
page.setAttribute('aria-hidden', 'false');
let gw = 0;
try { const g = JSON.parse(localStorage.getItem('mmbox.gcwk.v1') || 'null'); gw = g && !g.pp && g.w ? +g.w : 0; } catch (e) {}
if (gw >= 4) setTimeout(() => load(gw), 0); else setTimeout(autoFail, 0);
}
function autoFail() {
if (!autoOpen) return;
autoOpen = false;
toast('悄悄话暂时打不开,稍后再试');
setTimeout(closePage, 1500);
}
whLoad = w => load(w, w === wk); /* 同一孕周的重拉(「此刻」每 60 秒一次)按静默刷新走:失败不收入口 */
setInterval(() => { if (wk && !document.hidden && !busy) load(wk, true); }, 300000);

View File

@@ -40,7 +40,6 @@
}
sec.className = sec.className.replace(/\bgv\d\b/g, '') + ' gv4';
var wh = document.getElementById('whWall'); /* 11-07 悄悄话入口挂在本块里(app.js 拿着这个节点)→ 重画前摘下来,画完放回底部 */
sec.innerHTML =
'<div class="g4-head"><h2 class="g4-title"><span>孕妈广场</span></h2>' +
/* 11-03 用户:首页孕妈广场右上角的分类(全部 / 家庭婚姻 / 职场 / 经验)取消,换一句小 slogan */
@@ -54,7 +53,6 @@
'<div class="g4-rail"><span class="g4-pg"><b>1</b><i>/8</i></span></div></div>' +
'<div class="g4-tags"></div>' +
'<div class="g4-foot"><button type="button" class="g4-all">进孕妈广场 ›</button><span class="g4-mark">效果稿 V4</span></div>';
if (wh) sec.insertBefore(wh, sec.querySelector('.g4-foot'));
sec.classList.remove('hide');
var deck = sec.querySelector('.g4-deck'), pgB = sec.querySelector('.g4-pg b'), pgI = sec.querySelector('.g4-pg i'), tags = sec.querySelector('.g4-tags');

View File

@@ -233,7 +233,3 @@ html.night #gcHome.gv4.gv6 .g6-avs img{border:1px solid #2F2737}
#gcHome.gv4.gv6 .g6-list .g6-meta.g6-sw .g6-au{justify-self:end;max-width:100%}
/* 11-05 用户:「孕妈的精彩故事」标题和下面第一篇之间稍微拉开一点 → 2→8px */
#gcHome.gv4.gv6 .g6-mh{margin-bottom:8px}
/* 11-07 悄悄话夜空条(#whWall,app.js 渲染)挂在本块最底下收尾 */
#gcHome.gv4 .wh-entry{margin-top:14px}
#gcHome.gv4 .wh-entry.hide{display:none}

View File

@@ -8,7 +8,7 @@
if (!sec) return;
var l = document.createElement('link'); l.rel = 'stylesheet'; l.href = 'js/gch/v4.css?v=26110464';
document.head.appendChild(l);
var s = document.createElement('script'); s.src = 'js/gch/v4.js?v=26110607';
var s = document.createElement('script'); s.src = 'js/gch/v4.js?v=26110464';
s.onload = function () { if (sec.querySelector('.g4-foot')) merge(); else sec.addEventListener('gc4-ready', merge, { once: true }); }; /* v4 要先拉 feed.js 才渲染 */
document.body.appendChild(s);
@@ -69,7 +69,6 @@
/* 11-02 用户:「太多了,只放两个测一测」→ 3 个小列表撤掉(topic/yali、yinshi、zhunbei 页面保留,先不挂入口);
位置从卡堆下面挪到「其他妈妈也在搜」下面 */
sec.insertBefore(box, foot);
var wh = document.getElementById('whWall'); if (wh) sec.insertBefore(wh, foot); /* 11-07 悄悄话条留在整块最底下收尾 */
/* 11-03 用户:首页「孕期百宝箱」已有「趣味小测试」入口 → 这里两张测一测卡不要了(加 ?qzcard=1 还能看回) */
if (/[?&]qzcard=1(?:&|$)/.test(location.search)) sec.insertBefore(qz, foot);
var list = box.querySelector('.g6-list'), all = box.querySelector('.g6-all');