我在Chrome上遇到了这个问题。当我使用jQuery专注于选择部分文本的HTML input
时,我的页面跳转到顶部而不是元素本身。我创建了以下jsfiddle作为示例:
http://jsfiddle.net/wzs821jg/3/
我在每个input
的上方和下方放置了边距,足以创建滚动条。如果你的分辨率比我高(我在笔记本电脑上)并且你没有滚动条,只需添加更多的余量,直到你这样做。
向第二个input
添加足够的文本以使其滚动(在x上溢出)。你可以添加乱码,例如“asdfkasdkjfhakjsdhfaksdjhfkajshdkfajshdkfajshdkfjah”,这应该可以正常工作。一旦你有足够的文字,突出显示它的一部分。现在有两种方法可以使页面滚动到顶部:
button
,它有一个简短的jQuery监听器,专注于第二个input
。input
,然后按tab
以关注第二个input
在OSX Yosemite上的Chrome版本41.0.2272.101(64位)上,这两个操作都应该使窗口跳转到顶部而不是关注第二个input
。我试过Safari,我无法重现这个问题。我根据您选择文本的位置(外部,内部或溢出)和用于聚焦的方法经历了不同的行为。稍微玩一下。
我的问题是:这是Chrome的问题还是我做错了什么?
编辑:我已向Chrome提交了一个错误报告,指出了这个问题。除非有人有答案,否则我只是假设它只是浏览器中的一个错误。