悄悄话:弹窗只留「被赞 3 次变星星」;星星铺开 6 列;抽屉按方向吸附更跟手、按钮一带上划也能拉开
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
20
js/wh-cm.js
20
js/wh-cm.js
@@ -337,12 +337,21 @@
|
||||
if (!d0) return;
|
||||
var dd = d0; d0 = null;
|
||||
if (!dd.drag) return;
|
||||
/* 11-07 用户:「滑了一下又缩回去,要很大力气才上得去」→ 按方向判断:往上动过 24px(或甩一下)就往上一档,
|
||||
拖过半屏再往上就直接拉满;往下同理;只有几像素的小抖动才回原位 */
|
||||
var dy = e.changedTouches[0].clientY - dd.y, h = dd.base - dy, v = dy / Math.max(1, Date.now() - dd.t);
|
||||
if (v > .6 || h < ph() * .32) snap('closed');
|
||||
else if (v < -.4 || h > ph() * .64) snap('full');
|
||||
else snap('half');
|
||||
if (dy < -24 || v < -.25) snap(state === 'full' || h > hFor('half') + 40 ? 'full' : 'half');
|
||||
else if (dy > 24 || v > .25) snap(state === 'closed' || h < hFor('half') - 40 ? 'closed' : 'half');
|
||||
else snap(state);
|
||||
});
|
||||
|
||||
/* 在「说一句」按钮一带往上划,也能把抽屉拉上来 */
|
||||
var by = null;
|
||||
page.addEventListener('touchstart', function (e) {
|
||||
by = state === 'closed' && !P.contains(e.target) && e.touches[0].clientY > page.getBoundingClientRect().bottom - 170 ? e.touches[0].clientY : null;
|
||||
}, { passive: true });
|
||||
page.addEventListener('touchmove', function (e) { if (by != null && by - e.touches[0].clientY > 30) { by = null; open(); } }, { passive: true });
|
||||
|
||||
/* app.js 先画了「今天还能说 N 句」(那时本脚本还没加载)—— 说一句现在发进留言区,不再按每天 3 句算,换成留言规则 */
|
||||
function fixLeft() {
|
||||
var el = document.getElementById('whpLeft');
|
||||
@@ -364,8 +373,9 @@
|
||||
if (!M) return;
|
||||
M.classList.add('wh-star');
|
||||
var ld = document.getElementById('whMLead');
|
||||
ld.innerHTML = '<span class="wms"><i>1</i><span>写下想对<br>宝宝说的话</span></span><span class="wms"><i>2</i><span>审核通过<br>大家都看得到</span></span>' +
|
||||
'<span class="wms hi"><i>3</i><span>被赞 <b>' + STAR_N + '</b> 次<br>变成一颗星星</span></span>';
|
||||
/* 11-07 用户:只留「被赞 3 次变成星星」,明显一点 */
|
||||
ld.innerHTML = '<span class="wms hi"><svg viewBox="0 0 20 20"><path d="M10 .5C10.9 7.4 12.6 9.1 19.5 10 12.6 10.9 10.9 12.6 10 19.5 9.1 12.6 7.4 10.9.5 10 7.4 9.1 9.1 7.4 10 .5Z"/></svg>' +
|
||||
'<span>被赞 <b>' + STAR_N + '</b> 次,<br>你的话就变成一颗星星</span></span>';
|
||||
var lf = document.getElementById('whLeft'); if (lf) lf.textContent = '审核通过后,可以转给朋友帮你点赞';
|
||||
}
|
||||
if (M && !M.querySelector('.wms-sky')) M.insertAdjacentHTML('afterbegin', '<i class="wms-sky" aria-hidden="true"></i>');
|
||||
|
||||
Reference in New Issue
Block a user