讨论 » 创建请求

Can I prevent websites from taking focus to an arbitrary field (or other element) on page load?

§
发布于:2017-05-25

Can I prevent websites from taking focus to an arbitrary field (or other element) on page load?

This can be frustrating especially if the page loads slowly and the website takes to focus to a different field mid typing. It also prevent me from using single key hotkeys (/.- and such)
There's no point in taking focus into search fields and such, I can decide when I want to search.

woxxom管理员
§
发布于:2017-05-25

Not tested:

// ==UserScript==
// @name        Disable autofocus while loading
// @include     *
// @run-at      document-start
// ==/UserScript==

document.addEventListener('focusin', blur, true);
window.addEventListener('load', function _() {
  window.removeEventListener('load', _);
  document.removeEventListener('focusin', blur, true);
});

function blur(e) {
  if (e.target.localName == 'input' || e.target.localName == 'textarea') {
    e.target.blur();
  }
}

If it doesn't work try removing both , true.

§
发布于:2017-05-25

Thanks again!

§
发布于:2017-06-02

Hmmm. This has some issues.
I can't even select field manually while loading it seems.
Also, it doesn't seem effective for google advanced search: https://www.google.com/advanced_search?hl=en

On this website it often fails, when I refresh: https://www.arukereso.hu/mobiltelefon-c3277/

§
发布于:2017-06-02

Firefox offers a "browser.autofocus" setting in about:config. Is there a reason this setting is not sufficient?

§
发布于:2017-06-02
编辑于:2017-06-02
Firefox offers a "browser.autofocus" setting in about:config. Is there a reason this setting is not sufficient?

I tried it. It doesn't seem to affect what happens within the page.

发布留言

登录以发布留言。