首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >onfocusout / onfocusin不工作

onfocusout / onfocusin不工作
EN

Stack Overflow用户
提问于 2016-04-08 20:09:56
回答 3查看 7.2K关注 0票数 2

我刚刚了解了onfocusoutonfocusin,但这些函数似乎不起作用。我在火狐和chrome上都试过了。根本没有控制台消息,即使我有焦点和松开它。我做错了什么?

代码语言:javascript
复制
window.addEventListener
(
  "onfocusout",
  function()
  {
    console.log("page lost focus");
  }
);

window.addEventListener
(
  "onfocusin",
  function()
  {
    console.log("page has focus");
  }
);
代码语言:javascript
复制
<h1>Test</h1>

EN

回答 3

Stack Overflow用户

发布于 2016-04-08 20:16:03

对于addEventListener,您不能在事件名称中使用"on“

代码语言:javascript
复制
function example(evt) {
    console.log(evt.type, event.target.id);  
}

window.addEventListener("focusin", example);
window.addEventListener("focusout", example);
代码语言:javascript
复制
<input type="text" id="foo" />
<input type="text" id="bar" />

如果您想知道页面状态,那么您需要查看不同的事件:pageshowpagehide

票数 8
EN

Stack Overflow用户

发布于 2016-04-08 20:19:22

我已经做了一些关于这方面的研究。当你实际选择一个文本字段时,你只能获得“焦点”。来源:w3schools

那么,当您最小化屏幕时,您正在寻找的是让控制台记录一些东西?或者选择另一个窗口?如果是这样,我找到了一篇关于这个here的帖子

票数 2
EN

Stack Overflow用户

发布于 2016-04-08 20:21:38

只需使用下面的代码片段,它更容易阅读,但与事件处理程序的功能相同:-)

代码语言:javascript
复制
$(function(){
  $('.yourfocuselement').focus(function(){
      //The code for element focus goes here
    })
    $('.yourfocuselement').blur(function(){
      //The code for element lose focus goes here
    })
})

另外,我可能不知道您对此代码的完整要求,但我不明白为什么您需要为页面焦点添加一个侦听器……

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36499205

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档