feat(首页头图): 孕25周换母婴作图 v6 GIF——宝宝背对镜头、脐带更明显 (v26093016)

- 素材换母婴作图 v6(替代 v5 的 mp4):卡通动漫风宝宝背对镜头不露脸,脐带从囊壁右上方垂下、全程不动;
  画幅从 1280×736 变 16:9。
- 背景 = v6 静帧缩 .88、截取块中心 (656,360) 摆到 (1240,375),囊完整不裁;
  <video> 换成 <img>:原 GIF 截 450×450 整高块(含宝宝全部动作),object-fit:cover 铺满 .hero-baby,
  首帧和背景对齐误差 ≈3.7(GIF 抖动噪点级)。加载完淡入,没加载出来停在静帧。
- 宝宝不露脸了,嘴边的小气泡连同样式一起去掉;底色兜底 #df856a。

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-09-30 16:02:41 +00:00
parent 488989d82c
commit 8c25d5fc74
7 changed files with 32 additions and 64 deletions

View File

@@ -3,7 +3,7 @@
(function () {
'use strict';
/* 页面版本号(YYMMDD+序号):显示在「关于兜爸心选」页底部;bump 时同步 head 注释与 ?v= */
var VER = '26093015';
var VER = '26093016';
const $ = (s, c) => (c || document).querySelector(s);
const $$ = (s, c) => Array.from((c || document).querySelectorAll(s));
@@ -3696,24 +3696,14 @@
if (document.visibilityState !== 'hidden') resetScreenOnShow();
});
/* 首页头图里会动的宝宝(2026-09-30)。视频是装饰:静音、循环、放不了就停在底下的静态图上。
⚠️ 微信 iOS 的 web-view 不认 autoplay 属性,要等 WeixinJSBridgeReady 再手动 play();
页面切走时暂停,切回来再放,省电也省流量。「减少动态效果」下 CSS 直接隐藏,这里也不放。 */
/* 首页头图里会动的宝宝(2026-09-30,v6 起是 GIF)。装饰用:加载完再淡入,没加载出来就停在底下的静态图上。
「减少动态效果」下 CSS 直接隐藏。 */
(function heroKid() {
var v = document.getElementById('heroKid');
if (!v) return;
var reduce = false;
try { reduce = window.matchMedia('(prefers-reduced-motion: reduce)').matches; } catch (e) {}
if (reduce) { try { v.removeAttribute('autoplay'); v.pause(); } catch (e) {} return; }
v.muted = true;
function play() { try { var p = v.play(); if (p && p.catch) p.catch(function () {}); } catch (e) {} }
v.addEventListener('playing', function () { v.classList.add('is-on'); });
document.addEventListener('WeixinJSBridgeReady', play, false);
if (window.WeixinJSBridge) play();
document.addEventListener('visibilitychange', function () {
if (document.visibilityState === 'hidden') { try { v.pause(); } catch (e) {} } else play();
});
play();
var g = document.getElementById('heroKid');
if (!g) return;
function on() { g.classList.add('is-on'); }
if (g.complete && g.naturalWidth) on();
else g.addEventListener('load', on);
})();
if (document.readyState === 'complete') init();