孕期计算器新增 10 个(孕周/产检时间表/增重范围/生育津贴/育儿补贴/个税/月子花费/身高/血型/出生后手续),共用 topic/_shared/calc.*,配转发图(v26110299)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
deploy
2026-11-04 04:09:51 +00:00
parent bb4d84fb85
commit 75c418f453
36 changed files with 5913 additions and 33 deletions

112
topic/butie-js/index.html Normal file
View File

@@ -0,0 +1,112 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no,viewport-fit=cover">
<meta name="format-detection" content="telephone=no">
<title>育儿补贴计算器</title>
<!-- 孕期计算器 · 育儿补贴计算器(2026-11-04 用户从 20 个备选里选了带星的 10 个,本页是其中之一)。
依据:中办国办《育儿补贴制度实施方案》(2025 年 7 月):自 2025 年 1 月 1 日起,对 3 周岁以下婴幼儿发放育儿补贴,每孩每年 3600 元,按年发放,领到 3 周岁;
2025 年 1 月 1 日前出生、当时还不满 3 周岁的,按应补贴月数折算(每月 300 元)。补贴免个税,不计入低保等家庭收入。
月数按「自然月」数:从 max(出生月, 2025-01) 起,到满 3 周岁那个月之前为止(结果标「约」,以当地核定为准)。
最多填 3 个孩子;还没出生的填预产期先算。地方另有加码的(如部分城市每孩另发)不在这里算。
共用 ../_shared/calc.css + calc.js(返回 / 禁回弹 / 日期按北京时间 / 记住上次填的值);自成一页,不引 app.js。 -->
<link rel="stylesheet" href="../_shared/calc.css?v=26110299">
<style>:root{--c:#E25C5C;--c2:#FF9A8A;--cbg:#FFEFED}.kid{position:relative;margin-top:12px;padding:12px;border-radius:14px;background:#FAF7F8}.kid .lb{display:flex;justify-content:space-between}.kid .rm{font-size:12.5px;font-weight:700;color:var(--m)}.add{display:block;width:100%;height:42px;margin-top:12px;border-radius:12px;border:1.5px dashed var(--c);color:var(--c);font-size:14px;font-weight:800}.kid .seg{margin-top:8px}</style>
</head>
<body>
<div id="scroll">
<header class="bar" id="bar">
<button class="back" id="back" aria-label="返回"><svg viewBox="0 0 24 24"><path d="M15 5l-7 7 7 7"/></svg></button>
<span class="t">孕期计算器</span>
</header>
<section class="hd"><p>孕期计算器</p><h1>育儿补贴计算器</h1><span>国家每孩每年 3600 元,领到 3 岁,算算你家能领多少</span></section>
<section class="calc">
<div class="res" id="res"><div class="empty">填宝宝的出生日期,马上算出来</div></div>
<div id="kids"></div>
<button type="button" class="add" id="add">+ 再加一个孩子</button>
</section>
<section class="sec hide" id="sDet">
<h2>每个孩子能领多少</h2>
<p class="lead">每孩每年 3600 元,按年申领,领到 3 周岁</p>
<ol class="tl" id="tl"></ol>
</section>
<section class="sec">
<h2>怎么领</h2>
<ol class="tl">
<li><i class="d"></i><div class="m"><b>先给宝宝上户口</b><span>申领要用宝宝的身份信息,户口落好再申请。</span></div></li>
<li><i class="d"></i><div class="m"><b>线上申请</b><span>一般由爸爸或妈妈在支付宝、微信的「育儿补贴」入口,或当地政务服务平台提交,具体看当地通知。</span></div></li>
<li><i class="d"></i><div class="m"><b>审核后发放</b><span>审核通过后打到申请人的银行卡(社保卡),按年发放。</span></div></li>
</ol>
</section>
<div class="tip"><b>地方可能另有补贴:</b>部分城市在国家 3600 元之外还另发生育补贴、育儿补贴,问一下当地卫健部门或看政务平台。</div>
<p class="foot">依据《育儿补贴制度实施方案》(2025)估算,月数折算以当地核定为准。</p>
</div>
<script src="../_shared/calc.js?v=26110299"></script>
<script>
(function () {
'use strict';
var C = window.CK, $ = C.$;
C.shell();
var DAY = C.DAY, T = C.today(), S = Date.UTC(2025, 0, 1);
var st = C.store('mmbox.calc.butie', { k: [{ d: '', b: 1 }] });
if (!st.k.length) st.k = [{ d: '', b: 1 }];
if (st.k.length === 1 && !st.k[0].d) { var sd = C.savedDue(); if (!isNaN(sd) && sd > T) st.k[0] = { d: C.fmt(sd), b: 0 }; }
function draw() {
$('#kids').innerHTML = st.k.map(function (k, i) {
return '<div class="kid" data-i="' + i + '"><span class="lb">第 ' + (i + 1) + ' 个孩子' + (st.k.length > 1 ? '<button type="button" class="rm">删除</button>' : '') + '</span>' +
'<div class="seg s2"><button type="button" data-b="1"' + (k.b ? ' class="on"' : '') + '>已出生</button><button type="button" data-b="0"' + (!k.b ? ' class="on"' : '') + '>还没出生</button></div>' +
'<input class="in num" type="date" value="' + C.esc(k.d) + '" aria-label="' + (k.b ? '出生日期' : '预产期') + '"><span class="hint">' + (k.b ? '填出生日期' : '填预产期,先估一个数') + '</span></div>';
}).join('');
$('#add').classList.toggle('hide', st.k.length >= 3);
}
function months(b) { /* 应补贴的自然月数 */
var e = C.addMonths(b, 36), s = Math.max(b, S);
if (e <= S) return 0;
var d0 = new Date(s), d1 = new Date(e);
return Math.max(0, (d1.getUTCFullYear() - d0.getUTCFullYear()) * 12 + d1.getUTCMonth() - d0.getUTCMonth());
}
function paint() {
st.save();
var R = $('#res'), tot = 0, got = 0, n = 0, h = '';
st.k.forEach(function (k, i) {
var b = C.parse(k.d); if (isNaN(b)) return;
n++;
var m = months(b), amt = m * 300, e = C.addMonths(b, 36);
tot += amt;
var y = [0, 1, 2].map(function (j) {
var a = Math.max(C.addMonths(b, 12 * j), S), z = C.addMonths(b, 12 * j + 12);
if (z <= S) return null;
var d0 = new Date(a), d1 = new Date(z), mm = (d1.getUTCFullYear() - d0.getUTCFullYear()) * 12 + d1.getUTCMonth() - d0.getUTCMonth();
if (T >= a) got += mm * 300;
return (j === 0 ? '出生~1 岁' : j + '~' + (j + 1) + ' 岁') + ' <i class="num">' + mm * 300 + ' 元</i>' + (T >= z ? '(这一年已过)' : T >= a ? '(正在这一年)' : '');
}).filter(Boolean);
h += '<li class="' + (T >= e ? 'done' : T >= b ? 'now' : '') + '"><i class="d"></i><div class="m"><b>第 ' + (i + 1) + ' 个孩子 · ' + (m ? '约 ' + amt.toLocaleString() + ' 元' : '领不到') + '</b>' +
'<span>' + (k.b ? '出生' : '预产期') + ' <i class="num">' + C.cn(b, 1) + '</i>,满 3 周岁 <i class="num">' + C.cn(e, 1) + '</i></span>' +
(m ? '<span>可领 ' + m + ' 个月' + (b < S ? '(2025 年前出生,从 2025 年 1 月起算)' : '') + ':' + y.join(';') + '</span>' : '<span>2025 年 1 月 1 日时已满 3 周岁,不在补贴范围</span>') + '</div></li>';
});
$('#sDet').classList.toggle('hide', !n);
$('#tl').innerHTML = h;
if (!n) { R.innerHTML = '<div class="empty">填宝宝的出生日期,马上算出来</div>'; return; }
R.innerHTML = '<small>' + (n > 1 ? n + ' 个孩子' : '这个孩子') + '一共能领约</small><b class="big num">' + tot.toLocaleString() + '<u>元</u></b>' +
'<div class="row"><div><small>每孩每年</small><b class="num">3600 元</b></div><div><small>到今天已可申领</small><b class="num">' + got.toLocaleString() + ' 元</b></div></div>' +
'<span class="note">补贴免个税,按年申领;地方加码另算。</span>';
}
$('#kids').addEventListener('click', function (e) {
var w = e.target.closest('.kid'); if (!w) return; var i = +w.dataset.i;
if (e.target.closest('.rm')) { st.k.splice(i, 1); draw(); paint(); return; }
var b = e.target.closest('[data-b]'); if (b) { st.k[i].b = +b.dataset.b; draw(); paint(); }
});
$('#kids').addEventListener('change', function (e) { var w = e.target.closest('.kid'); if (!w || e.target.type !== 'date') return; st.k[+w.dataset.i].d = e.target.value; paint(); });
$('#add').addEventListener('click', function () { st.k.push({ d: '', b: 1 }); draw(); paint(); });
draw(); paint();
})();
</script>
<script src="../_shared/brand.js?v=26110203"></script>
<script src="../../js/share-card.js?v=26110299"></script>
<script>window.mbShare('../../assets/share/t/butie-js.jpg', '育儿补贴:每孩每年 3600 元,你家能领多少'); /* 11-04 微信转发图 */</script>
</body>
</html>