如何禁用Chrome/Firefox中文本框的自动聚焦功能?
如何禁用Chrome/Firefox中文本框的自动聚焦功能?
我完全懂你的烦恼——一边滚动浏览页面内容,一边在文本框里输入,结果刚敲几个字页面就自动跳到输入框位置,打断阅读节奏太闹心了!下面给你分享几个在Chrome和Firefox里亲测有效的解决办法:
Chrome 解决方案
方法1:自定义用户脚本(灵活可控)
先装个Tampermonkey扩展(Chrome网上应用店直接搜就能找到),然后新建一个用户脚本,把下面的代码粘贴进去:
// ==UserScript== // @name 禁用输入框聚焦自动滚动 // @match *://*/* // @grant none // ==/UserScript== document.addEventListener('focus', function(e) { const target = e.target; if (['INPUT', 'TEXTAREA'].includes(target.tagName)) { // 阻止默认的滚动行为 e.preventDefault(); // 手动给输入框焦点,但强制不触发滚动 target.blur(); target.focus({ preventScroll: true }); } }, true);
这个脚本的作用是:当任何输入框或文本域要获得焦点时,用preventScroll: true参数跳过自动滚动步骤,既能正常输入,又不会打乱你当前的浏览位置。要是某个网站需要正常跳转,临时禁用脚本就行。
方法2:专用扩展
直接在Chrome网上应用店搜索关键词「Disable Auto Scroll on Focus」,找那些用户评分高、安装量多的扩展,这类工具专门针对这个问题设计,一键启用就能生效,不用自己写代码。
Firefox 解决方案
方法1:内置配置修改(最省事)
Firefox自带相关设置,不用装任何工具:
- 在地址栏输入
about:config,按回车(弹出警告点「接受风险并继续」) - 在搜索框输入
layout.scroll.focusScrollIntoView - 双击这个参数,把它的值从
true改成false
这样全局禁用输入框聚焦时的自动滚动,所有网站都会生效。要是之后想恢复,再改回true就行。
方法2:用户脚本(和Chrome通用)
同样可以装Tampermonkey或Greasemonkey扩展,把上面Chrome的脚本粘贴进去,效果完全一样,适合需要针对特定网站设置的场景。
备注:内容来源于stack exchange,提问作者kwkw202020




