安卓4.4不支持touchend事件解决办法

本文介绍了解决Android 4.0和4.4版本中touch事件导致页面无法正常滑动的问题。通过在touchstart事件中加入event.preventDefault()来阻止浏览器默认行为,从而实现了页面的正常滑动。

最近的项目要求兼容到OPPO A31这款手机,这款手机是安卓4.4,调试时遇到了touch手指不能滑动页面切换的问题,最终解决通过在touchstart事件里面加上一个

event.preventDefault()阻止浏览器默认行为解决了此问题。

查找多方资料,发现安卓4.0和4.4存在此问题。为浏览器遗留的bug.通过上述方法都可解决!

转载于:https://www.cnblogs.com/5-clay/p/7873886.html

我的问题主要是,一个nextjs的网站可以正常使用,但是在android studio切换到安卓7版本,点击事件实效了,我需要进行排查为什么,目前可行的方法是export default function TestButton() { return ( <div> <script dangerouslySetInnerHTML={{ __html: ` console.log('🚀 Test page loaded'); let count = 0; function updateCount() { count++; document.getElementById('counter').textContent = count; document.getElementById('log').innerHTML += '<div>' + new Date().toLocaleTimeString() + ': Count updated to ' + count + '</div>'; console.log('Count updated to:', count); } function handleClick() { console.log('handleClick called'); updateCount(); } function handleTouch() { console.log('handleTouch called'); updateCount(); } // Wait for DOM setTimeout(function() { var button = document.getElementById('testBtn'); if (button) { console.log('Button found, adding listeners'); // Add all possible events button.addEventListener('click', handleClick, false); button.addEventListener('touchend', handleTouch, false); button.addEventListener('touchstart', function(e) { console.log('touchstart detected'); }, false); button.addEventListener('mousedown', function(e) { console.log('mousedown detected'); }, false); console.log('All event listeners added'); } else { console.log('Button not found!'); } }, 100); ` }} /> <div style={{ padding: '20px', fontFamily: 'Arial' }}> <h2>原生 HTML 测试 (Android 7)</h2> <button id="testBtn" style={{ width: '200px', height: '80px', fontSize: '24px', backgroundColor: '#ff0000', color: 'white', border: 'none', borderRadius: '10px', cursor: 'pointer', touchAction: 'manipulation' }} > 点击测试: <span id="counter">0</span> </button> <div style={{ marginTop: '20px' ,color: 'white'}}> <h3>日志:</h3> <div id="log" style={{ border: '1px solid #ccc', padding: '10px', minHeight: '100px', fontSize: '12px' }}></div> </div> <div style={{ marginTop: '20px' }}> <p><strong>User Agent:</strong> <span id="ua"></span></p> <p><strong>Touch Support:</strong> <span id="touch"></span></p> </div> </div> </div> ); } 但是这样对于我来说有点鸡肋
最新发布
08-29
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值