如何選擇具有當前焦點的元素?如何選擇一個與jQuery關注的元素
有jQuery中沒有:focus
過濾器,這就是爲什麼我們可以用這樣的:
$('input:focus').someFunction();
如何選擇具有當前焦點的元素?如何選擇一個與jQuery關注的元素
有jQuery中沒有:focus
過濾器,這就是爲什麼我們可以用這樣的:
$('input:focus').someFunction();
真正做到這一點是建立在onfocus事件處理程序的最佳方式,然後設置一個變量爲具有焦點的元素的ID。
是這樣的:
var id;
$(":input").focus(function() {
id = this.id;
});
你試過
$.extend($.expr[':'], {
focused: function(elem) { return elem.hasFocus; }
});
alert($('input :focused').length);
alert($("*:focus").attr("id"));
我使用jQuery。
它會警告元素的ID正在關注。
我希望它對你有用。
如果您使用JQuery,你可以寫一個selector like this:
$.expr[':'].focus = function(a){ return (a == document.activeElement); }
您可以再選擇當前焦點元素:$(":focus")
不僅表單控件可以有重點。任何帶有tabindex的html元素都可以專注於現代瀏覽器。
從當前的jQuery版本(1.7)實施例擡升文檔:
$(elem).is(":focus");
$(document.activeElement)
將返回當前聚焦元件,並且比使用僞選擇器更快:焦點。
爲了檢查元素具有焦點或沒有。
if ($("...").is(":focus")) {
...
}
這是它的CoffeeScript版本。基於jmanrubia代碼:
$.expr[':'].focus = (a) -> a is document.activeElement
你也這樣稱呼它使$(".:focus")
什麼是你真正想要做這樣我就可以知道是否有更好的方法 – TStamper 2009-02-05 14:48:30
http://stackoverflow.com/questions/967096 /使用-jquery-to-test-if-an-input-has-focus – gnarf 2011-05-04 17:27:33
請注意,您可以使用`$(':focus')`來查找當前文檔中當前焦點的元素。 – 2014-10-09 03:09:25