diff --git a/assets/share/c/t26.jpg b/assets/share/c/t26.jpg
index d3a9ef9..0395b50 100644
Binary files a/assets/share/c/t26.jpg and b/assets/share/c/t26.jpg differ
diff --git a/assets/share/c/t27.jpg b/assets/share/c/t27.jpg
index 5e5327a..cb67623 100644
Binary files a/assets/share/c/t27.jpg and b/assets/share/c/t27.jpg differ
diff --git a/assets/share/c/t28.jpg b/assets/share/c/t28.jpg
index 7ba9d86..394b91c 100644
Binary files a/assets/share/c/t28.jpg and b/assets/share/c/t28.jpg differ
diff --git a/assets/share/c/t29.jpg b/assets/share/c/t29.jpg
index ec69492..33f2d75 100644
Binary files a/assets/share/c/t29.jpg and b/assets/share/c/t29.jpg differ
diff --git a/assets/share/c/t30.jpg b/assets/share/c/t30.jpg
index c932358..78c903b 100644
Binary files a/assets/share/c/t30.jpg and b/assets/share/c/t30.jpg differ
diff --git a/guangchang/ceshi/index.html b/guangchang/ceshi/index.html
index 26b514a..2668074 100644
--- a/guangchang/ceshi/index.html
+++ b/guangchang/ceshi/index.html
@@ -3,7 +3,7 @@
-
+
测一测 · 孕妈广场
@@ -322,9 +322,9 @@ mark{background:linear-gradient(transparent 62%,var(--c20) 0);color:inherit;padd
-
-
-
+
+
+
+
孕妈广场
@@ -890,12 +890,12 @@ button{font:inherit;color:inherit;border:0;background:none;padding:0;cursor:poin
-
-
-
-
-
-
+
+
+
+
+
+
+
我的投稿
@@ -107,7 +107,7 @@ main{padding:6px 16px 0}
-
+
-
+
+
@@ -2618,13 +2618,13 @@
-
-
+
+
-
+
-
+
-
-
+
+
diff --git a/js/app.js b/js/app.js
index b23502f..56fa2d6 100644
--- a/js/app.js
+++ b/js/app.js
@@ -3,7 +3,7 @@
(function () {
'use strict';
/* 页面版本号(YYMMDD+序号):显示在「关于兜爸心选」页底部;bump 时同步 head 注释与 ?v= */
- var VER = '26110440';
+ var VER = '26110441';
const $ = (s, c) => (c || document).querySelector(s);
const $$ = (s, c) => Array.from((c || document).querySelectorAll(s));
@@ -2400,7 +2400,9 @@
/* 2026-10-22 删「谁能看到」两个开关(档案仅自己可见 / 允许家人查看):只变色 + toast,什么都不存 */
/* 2026-10-03 首页彩蛋开关(js/bump.js):第 5 项是 localStorage 键,开关状态真的存下来,不是摆设 */
{ t: '首页小彩蛋', rows: [
- ['sw', '宝宝在肚皮下动', '孕 20 周起,首页偶尔被宝宝顶起来,摁一下会躲开', 1, 'mb_bump']
+ ['sw', '宝宝在肚皮下动', '孕 20 周起,首页偶尔被宝宝顶起来,摁一下会躲开', 1, 'mb_bump'],
+ /* 11-05 用户:踢腿音效加开关,默认开(js/baby-limbs.js 每次响之前读 mb_kick_snd,'0' = 关) */
+ ['sw', '宝宝踢腿音效', '孕 20 周起,宝宝蹬腿时轻轻「噗」一声', 1, 'mb_kick_snd']
] },
{ t: '', rows: [
['txt', '我们不会把你的孕期数据用于广告投放,也不会卖给第三方。数据加密存储。']
diff --git a/js/baby-limbs.js b/js/baby-limbs.js
index f73d1df..6c096a0 100644
--- a/js/baby-limbs.js
+++ b/js/baby-limbs.js
@@ -133,6 +133,7 @@
['touchstart', 'pointerdown', 'click'].forEach(t => addEventListener(t, unlock, { passive: true, once: false, capture: true }));
function kickSound(delay) {
if (!ac || ac.state !== 'running') return;
+ try { if (localStorage.getItem('mb_kick_snd') === '0') return; } catch (e) {} // 11-05 「我的 → 隐私与权限 → 宝宝踢腿音效」关了就不响
const t = ac.currentTime + delay / 1000;
// 闷响:正弦 150→60Hz 快速下滑,低通滤掉高频,像隔着肚皮
const o = ac.createOscillator(), g = ac.createGain(), lp = ac.createBiquadFilter();
diff --git a/js/gch/v4.js b/js/gch/v4.js
index 82da0f4..0ac1057 100644
--- a/js/gch/v4.js
+++ b/js/gch/v4.js
@@ -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=26110440'; fs.onload = fs.onerror = init; document.body.appendChild(fs); }
+ else { var fs = document.createElement('script'); fs.src = 'guangchang/feed.js?v=26110441'; fs.onload = fs.onerror = init; document.body.appendChild(fs); }
})();
diff --git a/js/gch/v6.js b/js/gch/v6.js
index 26f784c..dd238e0 100644
--- a/js/gch/v6.js
+++ b/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=26110440';
+ var l = document.createElement('link'); l.rel = 'stylesheet'; l.href = 'js/gch/v4.css?v=26110441';
document.head.appendChild(l);
- var s = document.createElement('script'); s.src = 'js/gch/v4.js?v=26110440';
+ var s = document.createElement('script'); s.src = 'js/gch/v4.js?v=26110441';
s.onload = function () { if (sec.querySelector('.g4-foot')) merge(); else sec.addEventListener('gc4-ready', merge, { once: true }); }; /* v4 要先拉 feed.js 才渲染 */
document.body.appendChild(s);
diff --git a/js/kit.js b/js/kit.js
index c6d2403..3673a17 100644
--- a/js/kit.js
+++ b/js/kit.js
@@ -9,7 +9,7 @@
if (/[?&]kit=0(?:&|$)/.test(location.search)) return;
var box = document.getElementById('kit'), sec = document.getElementById('kitHome');
if (!box || !sec) return;
- var V = '26110440';
+ var V = '26110441';
var l = document.createElement('link'); l.rel = 'stylesheet'; l.href = 'js/kit.css?v=' + V; document.head.appendChild(l);
document.documentElement.classList.add('has-kit');
diff --git a/js/share-card.js b/js/share-card.js
index 98682e3..0d47cc1 100644
--- a/js/share-card.js
+++ b/js/share-card.js
@@ -8,7 +8,7 @@
postMessage 不是实时投递,微信在分享那一刻才派发,所以每次换内容都要再报一次;子页面没引 jweixin,这里按需加载。 */
(function (g) {
'use strict';
- var V = '26110440';
+ var V = '26110441';
var isWx = /MicroMessenger/i.test(navigator.userAgent || '');
var waiting = [], loading = false;
function ready(cb) {
diff --git a/tools/share-card/build.js b/tools/share-card/build.js
index 8af2d2e..9fc41b6 100644
--- a/tools/share-card/build.js
+++ b/tools/share-card/build.js
@@ -38,7 +38,7 @@ dirs.forEach(d => {
if (d === 'yuchanqi-js') { out.push({ k: 't/' + d, type: 'text', mod, c, big: '预产期', title: '宝宝哪天到?还有几天见面', cta, ic: 'calc' }); return; }
out.push({ k: 't/' + d, type: 'text', mod, c, big: kw, title: q, cta, ic: CALC[d] ? 'calc' : QUIZ_TOPIC[d] ? 'quiz' : (h ? h.tag : '专题') });
});
-const GC = { quiz: '#FF8A65', psy: '#9A7FE0', game: '#3FAE7A', shop: '#4E8DE6' }, GN = { quiz: '常识小测', psy: '趣味心理', game: '趣味闯关', shop: '好物配置' };
+const GC = { quiz: '#FF8A65', psy: '#9A7FE0', game: '#3FAE7A', shop: '#4E8DE6' }, GN = { quiz: '常识小测', psy: '趣味心理', game: '趣味闯关', shop: '花钱风格' };
window.GC_TESTS_META.forEach(x => out.push({ k: 'c/' + x.id, type: 'text', mod: '测一测 · ' + GN[x.group], c: GC[x.group], big: window.GC_SHORT[x.id] || '', title: x.title.replace(/^测一测|/, ''), cta: '点开测一测', ic: 'test:' + x.id, sub: x.n + ' 道题 · 测完看结果' }));
const T = window.GC_TOPICS, D = window.GC_DATA;
T.forEach(t => {
diff --git a/tools/share-card/manifest.json b/tools/share-card/manifest.json
index 5b212b8..fce40b5 100644
--- a/tools/share-card/manifest.json
+++ b/tools/share-card/manifest.json
@@ -1437,7 +1437,7 @@
{
"k": "c/t26",
"type": "text",
- "mod": "测一测 · 好物配置",
+ "mod": "测一测 · 花钱风格",
"c": "#4E8DE6",
"big": "挑东西看啥",
"title": "测测你给娃挑东西,最先看什么?",
@@ -1448,7 +1448,7 @@
{
"k": "c/t27",
"type": "text",
- "mod": "测一测 · 好物配置",
+ "mod": "测一测 · 花钱风格",
"c": "#4E8DE6",
"big": "下单风格",
"title": "测测你买母婴用品,是哪种下单风格?",
@@ -1459,7 +1459,7 @@
{
"k": "c/t28",
"type": "text",
- "mod": "测一测 · 好物配置",
+ "mod": "测一测 · 花钱风格",
"c": "#4E8DE6",
"big": "囤货指数",
"title": "测测你是「囤货妈」,还是「够用就好妈」?",
@@ -1470,7 +1470,7 @@
{
"k": "c/t29",
"type": "text",
- "mod": "测一测 · 好物配置",
+ "mod": "测一测 · 花钱风格",
"c": "#4E8DE6",
"big": "花钱类型",
"title": "测测你是哪一类「带娃花钱」玩家?",
@@ -1481,7 +1481,7 @@
{
"k": "c/t30",
"type": "text",
- "mod": "测一测 · 好物配置",
+ "mod": "测一测 · 花钱风格",
"c": "#4E8DE6",
"big": "清单挑货",
"title": "拿着宝宝购物清单,测出你的挑货习惯",
diff --git a/topic/_shared/tools.js b/topic/_shared/tools.js
index 82879ef..bd0d40b 100644
--- a/topic/_shared/tools.js
+++ b/topic/_shared/tools.js
@@ -57,7 +57,7 @@
'.tc-more{display:block;width:100%;margin-top:6px;height:40px;border:0;border-radius:99px;background:#F7F8FA;color:#4E5969;font-size:13px;font-weight:600}';
var SLUG = (location.pathname.match(/\/topic\/([^\/]+)\//) || [])[1] || '';
/* 11-04 微信转发图:每个专题一张 assets/share/t/.jpg(核心词大字 + logo),见 js/share-card.js */
- if (SLUG) (function () { var s = document.createElement('script'); s.src = '../../js/share-card.js?v=26110440'; s.onload = function () { window.mbShare('../../assets/share/t/' + SLUG + '.jpg'); }; document.head.appendChild(s); })();
+ if (SLUG) (function () { var s = document.createElement('script'); s.src = '../../js/share-card.js?v=26110441'; s.onload = function () { window.mbShare('../../assets/share/t/' + SLUG + '.jpg'); }; document.head.appendChild(s); })();
var SK = 'mmbox.tp.v1', UK = (function () { var m = ((location.hash || '') + '&' + (location.search || '')).match(/[#?&]openid=([^&]*)/); return m ? decodeURIComponent(m[1]) : '_guest'; })();
function loadMe() { try { var a = JSON.parse(localStorage.getItem(SK) || '{}') || {}; var m = a[UK] || {}; m.cm = m.cm || {}; m.lk = m.lk || {}; return { a: a, m: m }; } catch (e) { return { a: {}, m: { cm: {}, lk: {} } }; } }
function saveMe(st) { try { st.a[UK] = st.m; localStorage.setItem(SK, JSON.stringify(st.a)); } catch (e) {} }
@@ -70,7 +70,7 @@
function getJSON(u) { return fetch(u, { cache: 'no-cache' }).then(function (r) { if (!r.ok) throw r.status; return r.json(); }); }
function related(box) {
- getJSON('../_shared/idx.json?v=26110440').then(function (idx) {
+ getJSON('../_shared/idx.json?v=26110441').then(function (idx) {
var me = null; idx.forEach(function (x) { if (x[0] === SLUG) me = x; });
var tag = me ? me[2] : '', h = 0; for (var i = 0; i < SLUG.length; i++) h = (h * 31 + SLUG.charCodeAt(i)) >>> 0;
var rest = idx.filter(function (x) { return x[0] !== SLUG && (window.__mbUgc || ['ceshi', 'duiyou'].indexOf(x[0]) < 0); }); /* UGC 关着不推两个测试 */
@@ -177,13 +177,13 @@
}
fetch(API + '/comments?kind=topic&target=' + encodeURIComponent(SLUG) + (OID ? '&openid=' + encodeURIComponent(OID) : ''))
.then(function (r) { return r.json(); }).then(function (j) { if (j && j.code === 200) { RC = j.result; paint(); } }).catch(function () {});
- getJSON('../_shared/cm/' + SLUG + '.json?v=26110440').then(function (d) { L = d.c || []; paint(); }).catch(function () { paint(); });
+ getJSON('../_shared/cm/' + SLUG + '.json?v=26110441').then(function (d) { L = d.c || []; paint(); }).catch(function () { paint(); });
}
function ugcReady() {
if (window.__mbUgcReady) return window.__mbUgcReady;
return new Promise(function (res) {
- var u = document.createElement('script'); u.src = '../../js/ugc.js?v=26110440';
+ var u = document.createElement('script'); u.src = '../../js/ugc.js?v=26110441';
u.onload = function () { (window.__mbUgcReady || Promise.resolve(false)).then(res); };
u.onerror = function () { res(false); };
document.head.appendChild(u);
diff --git a/topic/butie-js/index.html b/topic/butie-js/index.html
index 9ac677b..001429c 100644
--- a/topic/butie-js/index.html
+++ b/topic/butie-js/index.html
@@ -11,8 +11,8 @@
月数按「自然月」数:从 max(出生月, 2025-01) 起,到满 3 周岁那个月之前为止(结果标「约」,以当地核定为准)。
最多填 3 个孩子;还没出生的填预产期先算。地方另有加码的(如部分城市每孩另发)不在这里算。
共用 ../_shared/calc.css + calc.js(返回 / 禁回弹 / 日期按北京时间 / 记住上次填的值);自成一页,不引 app.js。 -->
-
-
+
+
@@ -46,7 +46,7 @@
地方可能另有补贴:部分城市在国家 3600 元之外还另发生育补贴、育儿补贴,问一下当地卫健部门或看政务平台。
-
+
-
+
-
+