我正在使用 javascript 允许用户增加或减少表单字段。
$("#dash_up_arrow").bind('touchstart', function(e){
$num++
$field.html($num);
});
当我快速按下箭头时它似乎挂起。它正在接收正确数量的 touchstart 事件,但如果我按得太快它会跳过数字。
奇怪的是,大约有 1/3 的时间我加载页面时它可以完美运行——无论我按下箭头的速度有多快,数字都会随着按下它而同步增加。然后,当我重新加载页面时,它会回到挂起状态。
我已经确定没有应用程序在后台运行
知道是什么原因造成的吗?
最佳答案
解决了。差点让我发疯,但这是有问题的代码
background-image: url('../images/header_background.png'),
url('../images/swirly_pattern_light.png');
没错,问题出在 CSS 而不是 javascript。我制作了一个没有样式的测试页,只有足够的 javascript 来复制我正在尝试做的事情。每次都效果很好。
然后我测试了测试页面和真实页面之间的每一个差异,最后确定了一个——测试页面没有CSS。所以我杀死了真实页面上的 CSS,它起作用了。
最终缩小到 2 行。显然,拥有多个背景会减慢 safari 将更改呈现为 html 的速度。奇怪的错误。
感谢所有发贴者的帮助。
关于javascript - iPad safari javascript 增量器挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4883177/