99 lines
8.2 KiB
HTML
99 lines
8.2 KiB
HTML
<!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 个,本页是其中之一)。
|
||
遗传靶身高公式(中华医学会儿科学分会常用):男孩 =(父身高 + 母身高 + 13)÷ 2,女孩 =(父身高 + 母身高 − 13)÷ 2,误差约 ± 6.5 厘米。
|
||
对比用国家卫健委《中国居民营养与慢性病状况报告(2020 年)》18~44 岁平均身高:男 169.7 cm、女 158.0 cm。
|
||
身高约 70% 看遗传,营养、睡眠、运动影响剩下的部分 —— 结果只是参考范围。
|
||
共用 ../_shared/calc.css + calc.js(返回 / 禁回弹 / 日期按北京时间 / 记住上次填的值);自成一页,不引 app.js。 -->
|
||
<link rel="stylesheet" href="../_shared/calc.css?v=26110464">
|
||
<link rel="stylesheet" href="../_shared/wizard.css?v=26110464">
|
||
<style>:root{--c:#1F9BA8;--c2:#5FCBD3;--cbg:#E6F7F8}.sx{display:flex;gap:10px;margin-top:12px}.sx div{flex:1;padding:10px;border-radius:12px;background:rgba(255,255,255,.18)}.sx b{display:block;font-size:22px;font-weight:900;line-height:1.3}</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>按爸妈身高,推算宝宝长大后大概多高</span></section>
|
||
<section class="calc">
|
||
<div class="res" id="res"><div class="empty">填好爸爸妈妈的身高,马上算出来</div></div>
|
||
<div class="fld two">
|
||
<div><label class="lb" for="cF">爸爸身高</label><div class="inw"><input class="in num" type="number" inputmode="decimal" id="cF" placeholder="175"><em>厘米</em></div></div>
|
||
<div><label class="lb" for="cM">妈妈身高</label><div class="inw"><input class="in num" type="number" inputmode="decimal" id="cM" placeholder="162"><em>厘米</em></div></div>
|
||
</div>
|
||
<div class="fld"><span class="lb">宝宝是</span><div class="seg" id="cS"><button type="button" data-v="b">男孩</button><button type="button" data-v="g">女孩</button><button type="button" data-v="u">还不知道</button></div></div>
|
||
<!-- 11-05 用户:「只有两个问题太少」→ 加 3 题(家族身高 / 作息 / 运动),在遗传靶身高上做小幅加减(合计最多 ±3.5 cm),结果里写明每项加了多少 -->
|
||
<div class="fld"><span class="lb">爷爷奶奶、外公外婆那一辈,个子怎么样?</span><div class="seg" id="cA"><button type="button" data-v="2">普遍偏高</button><button type="button" data-v="0">和一般人差不多</button><button type="button" data-v="-2">普遍偏矮</button></div></div>
|
||
<div class="fld"><span class="lb">以后打算让宝宝晚上几点睡?</span><div class="seg" id="cZ"><button type="button" data-v="1">9 点前</button><button type="button" data-v="0">10 点左右</button><button type="button" data-v="-1">经常 11 点以后</button></div></div>
|
||
<div class="fld"><span class="lb">以后打算让宝宝每天户外跑跳多久?</span><div class="seg" id="cY"><button type="button" data-v="1">1 小时以上</button><button type="button" data-v="0">半小时左右</button><button type="button" data-v="-1">很少出门玩</button></div></div>
|
||
</section>
|
||
|
||
<section class="sec">
|
||
<h2>想长高,后天能做的</h2>
|
||
<ol class="tl">
|
||
<li><i class="d"></i><div class="m"><b>吃够蛋白质和钙</b><span>奶、蛋、肉、豆制品每天都有,别挑食;维生素 D 按医生建议补。</span></div></li>
|
||
<li><i class="d"></i><div class="m"><b>睡得早、睡得足</b><span>生长激素主要在深睡时分泌,晚上 9~10 点前入睡更好。</span></div></li>
|
||
<li><i class="d"></i><div class="m"><b>多跑多跳</b><span>跳绳、篮球、游泳这类纵向运动,每天户外活动 1~2 小时。</span></div></li>
|
||
<li><i class="d"></i><div class="m"><b>定期量身高</b><span>按儿保体检记录生长曲线,一年长不到 5 厘米(3 岁后)要找医生看看。</span></div></li>
|
||
</ol>
|
||
</section>
|
||
|
||
<p class="foot">按遗传靶身高公式估算,再按家族身高、作息和运动习惯小幅调整;实际身高受营养、睡眠、运动和疾病等影响,仅供参考。</p>
|
||
</div>
|
||
<script src="../_shared/calc.js?v=26110464"></script>
|
||
<script>
|
||
(function () {
|
||
'use strict';
|
||
var C = window.CK, $ = C.$;
|
||
C.shell();
|
||
var AVG = { b: 169.7, g: 158.0 };
|
||
var st = C.store('mmbox.calc.shengao', { f: '', m: '', s: 'u', a: '', z: '', y: '' });
|
||
$('#cF').value = st.f; $('#cM').value = st.m;
|
||
$('#cF').addEventListener('input', function () { st.f = this.value; paint(); });
|
||
$('#cM').addEventListener('input', function () { st.m = this.value; paint(); });
|
||
C.seg($('#cS'), st, 's', paint);
|
||
C.seg($('#cA'), st, 'a', paint); C.seg($('#cZ'), st, 'z', paint); C.seg($('#cY'), st, 'y', paint);
|
||
/* 后天 / 家族加减:家族 ±1.5(半个标准差左右)、早睡 ±1、运动 ±1;没答的算 0 */
|
||
function adj() {
|
||
var a = { '2': 1.5, '0': 0, '-2': -1.5 }[st.a] || 0, z = +st.z || 0, y = +st.y || 0, v = a + z + y, w = [];
|
||
if (a) w.push('家族' + (a > 0 ? '偏高 +' : '偏矮 ') + a);
|
||
if (z) w.push(z > 0 ? '早睡 +1' : '睡得晚 -1');
|
||
if (y) w.push(y > 0 ? '多运动 +1' : '少运动 -1');
|
||
return { v: v, t: w.length ? '已按你的回答调整 ' + (v > 0 ? '+' : '') + v + ' cm(' + w.join('、') + ')。' : '' };
|
||
}
|
||
function one(sx, f, m) { var t = (f + m + (sx === 'b' ? 13 : -13)) / 2 + adj().v; return { t: t, lo: t - 6.5, hi: t + 6.5 }; }
|
||
function cmp(sx, t) { var d = t - AVG[sx]; return Math.abs(d) < 1.5 ? '和全国平均差不多' : (d > 0 ? '比全国平均高 ' : '比全国平均矮 ') + Math.abs(d).toFixed(1) + ' cm'; }
|
||
function paint() {
|
||
st.save();
|
||
var f = +st.f, m = +st.m, R = $('#res');
|
||
if (!(f >= 130 && f <= 230 && m >= 120 && m <= 210)) { R.innerHTML = '<div class="empty">' + (st.f || st.m ? '身高填厘米,再核对一下' : '填好爸爸妈妈的身高,马上算出来') + '</div>'; return; }
|
||
if (st.s === 'u') {
|
||
var b = one('b', f, m), g = one('g', f, m);
|
||
R.innerHTML = '<small>宝宝长大后的身高大约</small><div class="sx"><div><small>如果是男孩</small><b class="num">' + b.t.toFixed(1) + ' cm</b><small class="num">' + b.lo.toFixed(0) + '~' + b.hi.toFixed(0) + ' cm</small></div>' +
|
||
'<div><small>如果是女孩</small><b class="num">' + g.t.toFixed(1) + ' cm</b><small class="num">' + g.lo.toFixed(0) + '~' + g.hi.toFixed(0) + ' cm</small></div></div>' +
|
||
'<span class="note">' + adj().t + '男孩' + cmp('b', b.t) + ',女孩' + cmp('g', g.t) + '(全国 18~44 岁平均:男 169.7、女 158.0)</span>';
|
||
return;
|
||
}
|
||
var x = one(st.s, f, m);
|
||
R.innerHTML = '<small>' + (st.s === 'b' ? '儿子' : '女儿') + '长大后的身高大约</small><b class="big num">' + x.t.toFixed(1) + '<u>厘米</u></b>' +
|
||
'<div class="row"><div><small>大概范围</small><b class="num">' + x.lo.toFixed(0) + '~' + x.hi.toFixed(0) + ' cm</b></div><div><small>和全国同龄比</small><b>' + cmp(st.s, x.t).replace('和全国平均', '').replace('比全国平均', '') + '</b></div></div>' +
|
||
'<span class="note">' + adj().t + '身高大约 70% 看遗传,吃好、睡好、多运动,有机会长到范围的上半段。</span>';
|
||
}
|
||
paint();
|
||
})();
|
||
</script>
|
||
<script src="../_shared/brand.js?v=26110203"></script>
|
||
<script src="../../js/share-card.js?v=26110464"></script>
|
||
<script>window.mbShare('../../assets/share/t/shengao-js.jpg', '宝宝身高预测:长大后大概多高'); /* 11-04 微信转发图 */</script>
|
||
<!-- 11-04 分步模式:一步一题、最后出结果(同生娃计算器),见 ../_shared/wizard.js -->
|
||
<script src="../_shared/wizard.js?v=26110464"></script>
|
||
<script>CKW.init({ root: '.calc', res: '#res', after: '#scroll > section.calc ~ *' });</script>
|
||
</body>
|
||
</html>
|