悄悄话改为广场信息流置顶笔记(首页不放);?wh=1 直接盖上星空页、关掉回广场;v26110608
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
34
js/app.js
34
js/app.js
@@ -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);
|
||||
|
||||
@@ -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');
|
||||
|
||||
@@ -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}
|
||||
|
||||
@@ -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');
|
||||
|
||||
Reference in New Issue
Block a user