首頁 > web前端 > js教程 > 如何使用 jQuery 檢查輸入是否有焦點?

如何使用 jQuery 檢查輸入是否有焦點?

Patricia Arquette
發布: 2024-11-15 03:22:02
原創
493 人瀏覽過

How to Check if an Input Has Focus Using jQuery?

使用jQuery 測試輸入是否具有焦點

使用jQuery 複製CSS :hover 行為(除< 之外的元素)時會出現這種困境;a>在IE6。

周圍的邊框當表單中的輸入獲得焦點且滑鼠遊標懸停進出時消失。

為了解決此問題,可以使用 jQuery 檢查表單中的任何輸入是否有焦點。但是,由於 jQuery 缺少 :focus 選擇器,因此必須採用替代方法。

jQuery 1.6

對於 jQuery 1.6 及更高版本,可以使用 :focus 選擇器。以下程式碼可用於檢查焦點:

$("..").is(":focus")
登入後複製

jQuery 1.5 及以下

對於早期的 jQuery版本,以下程式碼可用於定義新選擇器並檢查焦點:

jQuery.expr[':'].focus = function(elem) {
  return elem === document.activeElement &amp;&amp; (elem.type || elem.href);
};
登入後複製

或者,您可以使用以下方法檢查哪個元素具有焦點:

$(document.activeElement)
登入後複製

對於所有jQuery 版本

為了保證與不同jQuery 版本的兼容性,可以添加:focus選擇器,如下:

(function ($) {
  var filters = $.expr[":"];
  if (!filters.focus) {
    filters.focus = function(elem) {
      return elem === document.activeElement &amp;&amp; (elem.type || elem.href);
    };
  }
})(jQuery);
登入後複製

透過測試焦點,可以防止輸入獲得焦點且遊標懸停時邊框消失進出。

以上是如何使用 jQuery 檢查輸入是否有焦點?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板