精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

盤點JavaScript focus/blur(聚焦)實際應(yīng)用

開發(fā) 前端
當(dāng)用戶點擊某個元素或使用鍵盤上的 Tab 鍵選中時,該元素將會獲得聚焦(focus)。當(dāng)網(wǎng)頁加載時,HTML-特性(attribute)。

一、前言

當(dāng)用戶點擊某個元素或使用鍵盤上的 Tab 鍵選中時,該元素將會獲得聚焦(focus)。當(dāng)網(wǎng)頁加載時,HTML-特性(attribute)。

autofocus也可以讓一個焦點落在元素上,不僅如此,還有其它途徑可以獲得焦點。

二、focus/blur 事件

當(dāng)元素聚焦時,會觸發(fā) focus事件,當(dāng)元素失去焦點時,會觸發(fā) blur事件。讓使用它們來校驗一個 input字段。

1. 案例分析

blur事件處理程序檢查這個字段是否輸入了電子郵箱,如果沒有輸入,則顯示一個 error。

focus事件處理程序隱藏 error 信息(在blur事件處理程序上會被再檢查一遍)。

2. 代碼

<style>
  .invalid { border-color: red; }
  #error { color: red }
</style>
Your email please: 
<input type="email" id="input">
<div id="error">
</div>
<script>
input.onblur = function() {
  if (!input.value.includes('@')) { // not email
    input.classList.add('invalid');
    error.innerHTML = 'Please enter a correct email.'
  }
};
input.onfocus = function() {
  if (this.classList.contains('invalid')) {
    // 移除 "error" 指示,因為用戶想要重新輸入一些內(nèi)容
    this.classList.remove('invalid');
    error.innerHTML = "";
  }
};
</script>

注:

現(xiàn)代 HTML 允許使用 input特性(attribute),進行許多驗證:required,pattern等。

有時它們正是所需要的。當(dāng)需要更大的靈活性時,可以使用 JavaScript。如果數(shù)據(jù)是正確的,可以把它自動發(fā)送到服務(wù)器。

三、focus/blur 方法

elem.focus()和 elem.blur()方法可以設(shè)置和移除元素上的焦點。

例:

如果輸入值無效,可以讓焦點無法離開這個 input字段:

<body style="background-color: aqua;">
Your email please: 
  <input type="email" id="input">
    <input type="text" style="width:220px" placeholder="make email invalid and try to focus here">
    <script>
        input.onblur = function() {
            if (!this.value.includes('@')) { // not email
                // 顯示 error
                this.classList.add("error");
                // ...將焦點放回來
                input.focus();
            } else {
                this.classList.remove("error");
            }
        };
</script>
</body>

注:

如果在 input中輸入一些內(nèi)容,然后嘗試使用 Tab 鍵或點擊遠離 <input>的位置,那么 onblur事件處理程序會把焦點重新設(shè)置到這個 input字段上。

四、focus/blur 委托

focus和blur事件不會向上冒泡。

例如,不能把 onfocus放在 <form>上來對其進行高亮,像這樣:

<!-- on focusing in the form -- add the class -->
<form onfocus="this.className='focused'">
  <input type="text" name="name" value="Name">
  <input type="text" name="surname" value="Surname">
</form>
<style> 
  .focused { 
    
    outline: 1px solid red; 
  } 
</style>

當(dāng)用戶聚焦于 <input>時,focus事件只會在該 <input>上觸發(fā)。它不會向上冒泡。所以 form.onfocus永遠不會觸發(fā)。

form.onfocus永遠不會觸發(fā),(兩個解決方案)。

1. 方案一

有一個遺留下來的有趣的特性(feature):focus/blur不會向上冒泡,但會在捕獲階段向下傳播。

<form id="form">
  <input type="text" name="name" value="Name">
  <input type="text" name="surname" value="Surname">
</form>
<style> 
  .focused {
    outline: 1px solid red; 
  } 
</style>
<script>
  // 將處理程序置于捕獲階段(最后一個參數(shù)為 true)
  form.addEventListener("focus", () => form.classList.add('focused'), true);
  form.addEventListener("blur", () => form.classList.remove('focused'), true);
</script>

2. 方案二

可以使用 focusin和 focusout事件 —— 與 focus/blur事件完全一樣,只是它們會冒泡。

注意:必須使用 elem.addEventListener來分配它們,而不是 on<event>。

所以,這是另一個可行的變體:

<form id="form">
  <input type="text" name="name" value="Name">
  <input type="text" name="surname" value="Surname">
</form>
<style> 
  .focused { 
    outline: 1px solid red; 
  } 
</style>
<script>
  form.addEventListener("focusin", () => form.classList.add('focused'));
  form.addEventListener("focusout", () => form.classList.remove('focused'));
</script>

一樣的結(jié)果:

五、總結(jié)

本文基于JavaScript基礎(chǔ),介紹了focus/blur(聚焦)實際應(yīng)用。通過事件以及對方法的講解。在元素獲得/失去焦點時會觸發(fā) focus和 blur事件,通過 document.activeElement來獲取當(dāng)前所聚焦的元素。focus/blur 委托時遇到的問題,提供了兩個有效的解決方案。

歡迎大家積極嘗試,有時候看到別人實現(xiàn)起來很簡單,但是到自己動手實現(xiàn)的時候,總會有各種各樣的問題,切勿眼高手低,勤動手,才可以理解的更加深刻。

通過代碼的演示,運行效果圖的展示,能夠讓讀者更直觀的理解,更好的學(xué)習(xí)。

代碼很簡單,希望能夠幫助你更好的學(xué)習(xí)。

責(zé)任編輯:華軒 來源: 前端進階學(xué)習(xí)交流
相關(guān)推薦

2024-07-30 14:40:35

avaScript聚焦應(yīng)用

2021-07-30 09:53:22

JavaScriptfocusblur

2011-06-30 13:49:00

Qt 鍵盤 聚焦

2024-08-27 08:35:43

JavaScriptPromise模式

2012-10-23 17:16:16

企業(yè)云寶德云計算

2009-10-14 19:22:30

多路服務(wù)器曙光

2012-08-20 14:17:27

JavaScript

2009-12-18 10:58:17

Linux應(yīng)用程序

2010-03-09 19:07:01

Python語法

2021-04-21 09:55:24

Redis應(yīng)用限流

2025-08-28 08:53:21

事件委托冒泡focus

2021-07-20 10:26:12

JavaScriptasyncawait

2010-04-08 18:33:46

Oracle VARR

2024-01-26 13:07:20

綜合布線數(shù)據(jù)中心未來電網(wǎng)

2010-03-01 13:06:49

WCF繼承

2010-06-24 14:08:25

Linux Cat命令

2010-06-07 10:08:52

MySQL FLUSH

2010-03-17 10:01:12

Python安裝

2010-05-24 09:57:08

2009-10-28 14:28:10

點贊
收藏

51CTO技術(shù)棧公眾號

久久亚洲精品中文字幕| 欧美视频久久久| 欧美久久精品一级c片| 欧美日韩免费观看一区三区| 91国产免费观看| 国外成人在线视频| 天天躁日日躁aaaa视频| 玖玖精品在线| 亚洲午夜免费电影| 日本一区二区三区精品视频| 国产欧美综合视频| 国产精品日韩精品欧美精品| 日韩一区二区精品视频| 手机免费看av片| 精品免费av一区二区三区| 亚洲精品高清在线观看| 欧美综合激情| 国产av一区二区三区| 久久一区欧美| 欧美—级a级欧美特级ar全黄| 五月天精品视频| 亚洲精品一二三**| 欧美日韩国产色站一区二区三区| 精品少妇在线视频| 精品美女在线观看视频在线观看| 福利电影一区二区| 国产欧美日韩丝袜精品一区| 亚洲男人的天堂在线视频| 婷婷综合网站| 一夜七次郎国产精品亚洲| 日本精品一二三区| 国产精品国产亚洲精品| 欧美在线观看视频一区二区 | 成人国产精品日本在线| 久久久久久久久久影院| 激情久久久久| 欧美成人精品三级在线观看 | 成人小说亚洲一区二区三区| 久久精品国产久精国产| 日韩免费视频在线观看| 日本视频免费在线| 影音先锋亚洲一区| 欧美黑人狂野猛交老妇| 午夜免费激情视频| 欧美人妻一区二区| **精品中文字幕一区二区三区| 欧美视频在线观看免费网址| 日本福利视频一区| 欧美亚洲天堂| 亚洲一区视频在线| www成人免费| 男女羞羞视频在线观看| 亚洲精品国产a| 欧美这里只有精品| 男女在线观看视频| 亚洲成在人线在线播放| 99热亚洲精品| 妞干网免费在线视频| 午夜精品久久久久| 日本www在线视频| 24小时免费看片在线观看| 夜夜精品浪潮av一区二区三区| 黄色www在线观看| 国产日产一区二区三区| 亚洲特级片在线| 亚洲自拍偷拍一区二区三区| 影音先锋男人在线资源| 亚洲国产日韩a在线播放性色| 日韩人妻无码精品久久久不卡| 男人天堂亚洲天堂| 欧美日韩在线免费观看| 女性隐私黄www网站视频| 先锋欧美三级| 欧美精品久久99久久在免费线 | 国产精品一级在线| 国产精品永久入口久久久| 欧美自拍偷拍第一页| 91丨九色丨蝌蚪丨老版| 日韩精品久久一区| www.在线视频| 亚洲va欧美va人人爽| 欧美二区在线视频| 巨胸喷奶水www久久久免费动漫| 精品视频一区三区九区| 天天干天天曰天天操| 好吊妞国产欧美日韩免费观看网站| 日韩高清有码在线| 日本xxx在线播放| 色爱综合网欧美| 欧美日韩ab片| 一级做a爰片久久毛片| 免费精品视频在线| 国产精品国产三级国产专区53 | 亚洲精品v亚洲精品v日韩精品| 亚洲第一中文字幕| 极品蜜桃臀肥臀-x88av| 欧美日韩亚洲一区三区| 欧美最近摘花xxxx摘花| 一级特黄特色的免费大片视频| 国产成人在线视频网址| 欧美一区二区三区精美影视| 黄网页在线观看| 欧美丝袜一区二区| 天天做天天干天天操| 欧美激情15p| 久久色精品视频| 天天干天天干天天操| 国产一区二区三区在线看麻豆| 精品久久久久亚洲| 国产精品扒开做爽爽爽的视频| 天天操天天综合网| 午夜xxxxx| 精品久久久久久久久久久aⅴ| 欧美俄罗斯性视频| 亚洲字幕在线观看| 一区二区www| 91亚洲精品久久久蜜桃| 国产av不卡一区二区| av亚洲一区二区三区| 亚洲国产成人久久综合| www色aa色aawww| 轻轻草成人在线| 九九九久久久| 丰满大乳少妇在线观看网站| 欧美欧美欧美欧美首页| 欧美性猛交xxxx乱| 亚洲精品1区2区| 97久久人人超碰caoprom欧美| 97最新国自产拍视频在线完整在线看| 亚洲成人激情综合网| 国产九九九视频| 欧美r级电影| 国产精品欧美激情在线播放| 全色精品综合影院| 五月天精品一区二区三区| 欧美一级二级三级蜜桃| 五月天激情播播| 精品国产不卡| 青青在线视频一区二区三区| 天堂国产一区二区三区| 一区二区三区.www| 麻豆精品国产传媒| 欧美激情四色| 99精品国产高清在线观看| 国产原创在线观看| 91精品国产综合久久精品app | 亚洲av无码一区二区三区性色| 亚洲欧洲av一区二区三区久久| www.欧美日本| 精品欧美久久| 国产噜噜噜噜久久久久久久久| yes4444视频在线观看| 在线视频国内一区二区| 亚洲图片第一页| 久久国产精品第一页| 一区二区精品在线观看| 爱情电影网av一区二区| 久久成人精品视频| 亚洲欧美激情另类| 婷婷夜色潮精品综合在线| www.超碰97| 日日骚欧美日韩| 日韩一区二区三区资源| 欧美风情在线视频| 大胆欧美人体视频| 欧美一级特黄aaaaaa大片在线观看| 亚洲狠狠爱一区二区三区| 日韩成人av影院| 国产精品久久久久久模特| 奇米影视首页 狠狠色丁香婷婷久久综合| 欧美性xxx| xxxxx成人.com| 亚洲av无码乱码国产精品| 天天操天天干天天综合网| 久久久久久久久久久久久久久| 奇米影视在线99精品| 国产在线拍揄自揄拍无码| 136国产福利精品导航网址应用| 97视频免费观看| 天天干免费视频| 欧美性色黄大片手机版| 日本妇女毛茸茸| 99久久久久久| 国产又猛又黄的视频| 综合久久十次| 久久久久九九九| 日韩在线激情| 97久久精品国产| 色欧美激情视频在线| 日韩欧美不卡在线观看视频| 五月天激情四射| 中文字幕色av一区二区三区| 国产激情第一页| 免费精品视频最新在线| 欧美精品自拍视频| 久久美女视频| 精品国产一区二区三区麻豆小说 | 久久久久久黄| 99精品一级欧美片免费播放| 国产图片一区| 国产精品亚洲第一区| 国产盗摄一区二区| 日韩中文字幕视频| 色网站在线免费观看| 欧美一激情一区二区三区| 6080午夜伦理| 亚洲国产综合91精品麻豆| 日本污视频网站| 99免费精品视频| 91欧美一区二区三区| 麻豆成人在线| 18黄暴禁片在线观看| 色综合狠狠操| 欧美乱偷一区二区三区在线| 网站一区二区| 国产欧美日韩亚洲精品| 性欧美超级视频| 国内外成人免费激情在线视频| 日本中文字幕视频在线| 亚洲欧美日韩精品久久| 亚洲国产精品suv| 在线电影院国产精品| 樱花视频在线免费观看| 丁香五六月婷婷久久激情| 精品少妇爆乳无码av无码专区| 国产精品嫩草99a| 麻豆精品免费视频| 91免费观看在线| 久久久久久婷婷| 福利电影一区二区| 国偷自产av一区二区三区麻豆| 麻豆国产欧美日韩综合精品二区| 任你操这里只有精品| 一区二区日本视频| 日本xxxxxxxxxx75| 国内综合精品午夜久久资源| 二级片在线观看| 欧美电影三区| 在线不卡视频一区二区| 欧美午夜精彩| 日本一区二区三区视频免费看| 日本一区福利在线| 精品国产一区二区三区久久久久久| 国产欧美一区二区三区米奇| 国产伦精品一区二区三区在线| eeuss国产一区二区三区四区| 亚洲在线免费看| 亚洲一区二区三区在线免费| www.久久久| 18国产精品| 精品国产一区二区三区日日嗨| 奇米777国产一区国产二区| 久久国产精品精品国产色婷婷| 欧美国产极品| 欧美精品欧美精品系列c| 国产精品一区二区av日韩在线| 免费中文日韩| 青草国产精品| 手机成人av在线| 国产综合视频| 蜜桃传媒一区二区三区| 欧美一级二区| 欧美三级理论片| 韩国av一区二区三区| 国产在线a视频| www.欧美日韩国产在线| www.久久国产| 国产精品色眯眯| 在线免费日韩av| 精品国产91久久久久久老师| 无码人妻精品一区二区三区9厂| 色成年激情久久综合| 一级片一区二区三区| 日韩免费看网站| 日本啊v在线| 久久香蕉频线观| 91视频欧美| 国产成人自拍视频在线观看| 中文幕av一区二区三区佐山爱| 97超碰在线播放| 少妇精品久久久一区二区三区| 亚洲精品成人三区| 亚洲午夜伦理| 黄色国产小视频| 国产电影一区在线| 瑟瑟视频在线观看| 亚洲手机成人高清视频| 99视频在线看| 欧美日韩国产首页| 香蕉视频网站在线| www.日韩系列| 国产传媒在线观看| 国产日本欧美在线观看| 麻豆一区二区| 制服诱惑一区| 先锋影音久久久| 97免费公开视频| 国产亚洲一区二区三区在线观看| 亚洲国产美女视频| 一本大道久久a久久精品综合| 99久久免费国产精精品| 亚洲人成啪啪网站| 国产又色又爽又黄刺激在线视频| 国产精品美女免费| 欧美人与动xxxxz0oz| 最近看过的日韩成人| 久久九九免费| 香蕉久久久久久av成人| 国产精品久久久久久久久免费相片| 日本少妇性高潮| 91精品国产入口| yourporn在线观看中文站| 91成人国产在线观看| 亚洲一二av| 亚洲在线观看一区| 久久视频一区| 亚洲图片综合网| 亚洲综合一区二区精品导航| 中文字幕一区二区三区波野结| 日韩毛片中文字幕| 蜜乳av一区| 91视频网页| 伊人久久大香线蕉精品组织观看| 日本免费观看网站| 久久久精品免费免费| 国产午夜视频在线播放| 日韩精选在线观看| 午夜视频一区二区| 性猛交富婆╳xxx乱大交天津| 中文字幕精品一区二区精品| 深夜福利视频一区二区| 丁香五月网久久综合| 99久久99久久精品国产片果冰| av无码精品一区二区三区| 99riav久久精品riav| 日韩精品一区二区三| 精品日韩一区二区三区| 污污片在线免费视频| 亚洲影影院av| 欧美网站在线| 人妻精品久久久久中文字幕69| 日韩理论片网站| 91精品视频免费在线观看| 中文字幕日韩欧美在线| 成人激情综合| 五月天亚洲综合情| 全国精品久久少妇| 精品国产大片大片大片| 欧美另类一区二区三区| 美女黄视频在线观看| 成人免费自拍视频| 国产精品91一区二区三区| www.久久久久久久久久久| 中文字幕一区二区在线观看| 一女二男一黄一片| 欧美老妇交乱视频| 精品午夜电影| 六月丁香婷婷激情| 国产婷婷一区二区| 在线观看色网站| 久久人人爽人人爽爽久久| 国产视频一区二| av日韩在线看| 91视频免费播放| 日本视频免费观看| www.久久撸.com| 亚洲精品a区| 超碰97人人射妻| 欧美激情一区在线| av高清一区二区| 69久久夜色精品国产69乱青草| 精品中文字幕一区二区三区av| 浓精h攵女乱爱av| 亚洲精品免费电影| 亚洲三区在线观看无套内射| 国产精品高清在线观看| 色综合天天综合网中文字幕| 丰满人妻一区二区三区大胸 | 国产免费xxx| 91丨九色丨黑人外教| 在线播放成人av| 欧美大片在线影院| 国产成人三级| 在线免费黄色小视频| 欧美日韩免费观看中文| 日本视频不卡| 国产三区精品| 久久国产精品免费| 日本道在线观看| 北条麻妃久久精品| 天堂99x99es久久精品免费| 日韩在线不卡一区| 精品成人久久av| 精品美女在线观看视频在线观看| 国产91视觉| 老司机精品视频导航| 国产成人自拍视频在线| 精品国模在线视频| 亚洲丝袜美腿一区| 欧美日韩一区二区区|