JSFiddle:http://jsfiddle.net/vJqy6/7/
HTML:
<form method="post" action="#">
<div id="hiddenfields" style="display: none">
</div>
<input type="text" name="laggy" />
<input type="text" name="fine" />
</form>
Javascript(易于生成):
for(var i = 0; i < 10; i++) {
$('#hiddenfields').append('<div><select name="hidden' + i + '"></select></div>');
}
for(var i = 0; i < 200; i++) {
$('#hiddenfields select').append('<option value="' + i + '">' + i + '</option>');
}
在safari 6.1(在Mac上)由于隐藏的选择元素,我得到了奇怪的行为。 我发现如果我在表单中的隐藏div中有一堆大的选择字段,那么第一个非隐藏文本输入具有非常滞后的输入。
要测试小提琴,只需尝试在右下角的第一个文本输入中键入任何文本,它应该很慢并且每隔几秒显示一个字符。如果增加选项计数,则可以强制减速变得更糟,与选择计数相同。输入第二个文本输入可以正常工作!
我的测试是在OS X版本10.8.5上进行的
如果我从Web检查器执行javascript配置文件,我会遇到某些方法,这些方法看起来像基于浏览器的大型减速器(请注意,此屏幕截图不是来自jsfiddle的测试):
此问题不是旧版本的safari,并且不会发生在chrome,firefox,IE中。我现在用铬打开它,它像黄油一样光滑
这让我相信它可能是safari 6.1中的一个错误
答案 0 :(得分:0)
与Apple创建了一个错误,最终将其标记为另一张彩票的副本。我无法使用他们的bug工具查看其他票证。另一张票是关闭的,所以如果它是一个实际的错误,那么它可能在他们的开发版本中修复,或者它也可能是“不是一个bug”