gpt4 book ai didi

iOS safari 崩溃(问题反复出现)

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:28:53 24 4
gpt4 key购买 nike

我正在开发一个网站,最近在我的 iPhone X 上进行测试时遇到了一个问题——该网站无法加载。

Safari 尝试加载它,然后报告错误“此网页已重新加载,因为出现问题”,尝试几次后它放弃并报告“问题反复出现”。我 iPhone 上的 Chrome 也无法加载网站。

此时我不能公开分享网站,但是chrome桌面控制台没有报错。事实上,该网站在我的台式机、我的笔记本电脑、我的旧 iPhone 6 和 5s、我的 friend 三星 android 以及我测试过的其他 15 台随机计算机和手机上运行得非常好。它也可以在 xCode 模拟器中正常加载。但它不适用于我的 iPhone X。

我对 SO 和整个互联网的研究使我相信这个错误通常是由于内存使用过多造成的,但桌面 Chrome 报告内存使用峰值仅为 20mb。此外,该网站在我的劣质 iPhone 5s 上加载得很好。

我已经清除了 iPhone X 上的 safari 和 chrome 缓存,打开/关闭阻止 cookie,重置网络设置,然后重新启动手机。

我担心的是,如果我的 iPhone X 无法加载网站,毫无疑问其他用户也会遇到问题,即使我也测试过的 20 种其他设备也能正常工作。

有人知道这里发生了什么吗?

最佳答案

我今天遇到了这个问题,想看看会导致这种情况发生的 MRE。当 autofocus 时,iOS 14 上的 Safari 和 Chrome 似乎都崩溃了。属性设置在至少两个 <input>然后使用 JavaScript 在任一控件上请求焦点。我能够确认崩溃不会发生在 iOS <= 13 上。macOS 上的 Chrome 87 和 Safari 13.1 也不受影响。

是否发生崩溃取决于请求焦点的时间。在“窗口加载”事件中,事情继续运行。当在“文档准备就绪”处理程序中或在文档末尾请求时,事情就变糟了。

设置autofocus在一个以上的元素上没有多大意义,但浏览器不应该崩溃。 JavaScript 回退可用于为 browsers that lack support 提供一致的用户体验对于 autofocus属性。明显的解决方法是删除所有冲突的 autofocus属性。

/*
// Load event on window object: NO CRASH
window.addEventListener('load', (e) => document.querySelector('input[name="field_1"]').focus());

// DOMContentLoaded event on document object: CRASH
document.addEventListener('DOMContentLoaded', (e) => document.querySelector('input[name="field_1"]').focus());
*/

// End of document script: CRASH
document.querySelector('input[name="field_1"]').focus();
<!DOCTYPE html>
<html>
<body>
<form>
<p><label>First field<br><input type="text" name="field_1" autofocus></label></p>
<p><label>Second field<br><input type="text" name="field_2" autofocus></label></p>
</form>
</body>
</html>

关于iOS safari 崩溃(问题反复出现),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52595504/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com