首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Jquery :焦点选择器在iOS中的输入元素?

如何使用Jquery :焦点选择器在iOS中的输入元素?
EN

Stack Overflow用户
提问于 2012-07-27 18:01:41
回答 1查看 1.3K关注 0票数 1

我使用的是jQuery1.7.1和iPad1 iOS3。

除非输入元素有焦点,否则我需要在滚动启动上触发一个函数。下面的函数工作了很长一段时间,但突然之间就不起作用了(我想是因为切换到Jquery 1.7.1)。

代码语言:javascript
复制
$(document).on('scroll', function(){
   if ( !$("input:focus").length > 0 ) {  
       self.hideAllPanels();
       }
  });

具体来说,$('input: focus ').length = 0,虽然我可以在滚动事件之前检测到焦点事件的触发。

我一直在摆弄一个解决办法,用:

代码语言:javascript
复制
 if ( !$(document.activeElement).get(0).tagName == "input" ){
 ....
 }

但是我不确定activeElement何时正在改变,因为它似乎持续了很长一段时间,即使是在我“离开”这个不赞成的元素之后。

问题

知道为什么我不能检测到iOS上的焦点元素吗?一些提示,我可以如何设置与activeElement,因此模糊,我不再有输入,因为activeElement也是受欢迎的!

谢谢你帮忙!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-27 18:08:30

代码语言:javascript
复制
$(document).on('scroll', function(){
   if (!$("input").is(':focus')) {  
       self.hideAllPanels();
   }
});

这似乎适用于我,但如果输入元素没有焦点,它将在滚动期间多次触发该函数。

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

https://stackoverflow.com/questions/11693201

复制
相关文章

相似问题

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