我想在JavaScript中找出目前关注哪个元素.我一直在浏览DOM,但还没找到我需要的东西.有没有办法做到这一点,以及如何?
我之所以在寻找这个:
我正在尝试制作像箭头一样的键,并enter在输入元素表中导航.选项卡现在可以使用,但是输入,并且默认情况下不显示箭头.我已经设置了密钥处理部分,但现在我需要弄清楚如何在事件处理函数中移动焦点.
在我正在构建的站点的首页上,有几个<div>使用CSS :hover伪类在鼠标悬停时添加边框.其中一个<div>包含一个<form>,使用jQuery,如果其中的输入具有焦点,将保持边界.除了IE6不支持:hover除<a>s 之外的任何元素之外,这完全有效.所以,对于这个浏览器,我们只使用jQuery来模拟:hover使用该$(#element).hover()方法的CSS .唯一的问题是,现在的jQuery处理两种形式focus() 和 hover(),当输入具有焦点,则用户移动鼠标或缩小,边界消失.
我以为我们可以使用某种条件来阻止这种行为.例如,如果我们测试鼠标输出是否有任何输入有焦点,我们可以阻止边界消失.AFAIK,:focusjQuery中没有选择器,所以我不确定如何实现这一点.有任何想法吗?
使用jQuery,我如何获得具有插入符号(光标)焦点的输入元素?
或者换句话说,如何确定输入是否具有插入符号的焦点?
我有:
<input type="text" />
Run Code Online (Sandbox Code Playgroud)
和
$('input').blur(function(){
alert('stay focused!');
});
Run Code Online (Sandbox Code Playgroud)
我想通过点击一个锚元素来防止模糊功能在我"模糊"时运行.
IE如果我选择另一个输入,点击页面上的某个地方等我想要模糊,但如果我点击一个链接,我不希望它开火.
这是否容易实现,还是我需要与代表和信号量进行破解?
谢谢
我有一个表单,其中包含一些常见字段,如"电子邮件".我有javascript捕获返回键(13)并提交表单,但在主机面板上使用defaultButton属性时观察到相同的效果.
如果用户在IE上并且正在键入他的电子邮件地址,则通过按Enter键从浏览器的内联自动完成中选择一个项目,不会向Javascript发送任何按键.好.
但是在Firefox上,文本框收到ENTER按键并想要提交表单,但表单不完整.
除了禁用自动完成功能之外,有没有人知道如何阻止此操作?我无法找到一种方法来检测按键实际上来自自动完成列表框.
我正在使用asp.net和jQuery.
编辑 - 澄清:按自动填充中的项目输入不应提交表单.IE行为是正确的(一次!).
我的事件处理程序本身就是:
on key up(试过按键) - if(e.which == 13)submitForm();
问题是,我不知道如何检测到ENTER按下实际来自自动完成控件
我有一个弹出对话框,可让您在单击按钮时编写文本并执行操作.我的代码如下
这个函数有效,我通过查看e.originalEvent.explicitOriginalTarget找到新对象.但是现在我注意到如果我按Tab键将调用此函数,但e.originalEvent.explicitOriginalTarget将给我相同的当前对象而不是新对象.因此,如果用户按Tab键离开,我的对话框就不会关闭.我如何找到正确的新dom项目?
$('#Area').focusout(function (e) {
if ($(e.originalEvent.explicitOriginalTarget).closest('#Area').size() == 0)
$('#Area').hide();
});
Run Code Online (Sandbox Code Playgroud) jquery ×5
javascript ×4
asp.net ×1
autocomplete ×1
caret ×1
cursor ×1
dom ×1
element ×1
events ×1
jquery-on ×1
lost-focus ×1
webforms ×1