首頁 web前端 js教程 如何讓div span等元素能回應鍵盤事件操作指南_javascript技巧

如何讓div span等元素能回應鍵盤事件操作指南_javascript技巧

May 16, 2016 pm 05:48 PM
div span 事件 回應 鍵盤

在我這幾天的工作中遇到了一個問題,google了一下找到了解決方案,不過是英文的,我簡單翻譯下讓更多的人能看懂
譯文如下
我有一個可編輯的div,並且在DIV裡面還有一個可編輯的span,我想要讓span能響應鍵盤事件,
這裡是測試JS代碼:

複製程式碼 程式碼如下:

$(function()
{
$('#someid'). keypress(function(event){alert('test');});
});

這裡是測試html程式碼:
複製程式碼 程式碼如下:


editable follows>editable follows>editable follows>editable :Some TEXT


如果你在瀏覽器中測試,你會看見,當你在Some TEXT上press key時,沒有'test'彈出框彈出,我知道這個問題的發生原因是因為事件是從span的父節點div發出來的,所以span沒有觸發到事件,當然也是因為span沒有焦點造成的,所以我想要誰幫我找出解決方案。
最後終於有好心人幫助解決了這個問題
關於你的問題的解決方案代碼我已經提交到了http://jsfiddle.net/gaby/TwgkC/3/ 並且工作正常
在FF , Opera, Chrome, Safari, IE8 ..中測試
#someid需要獲得焦點才能觸發keypress,如果你想要你的程式碼獲得焦點在元素創建後立即使用.focus()方法
複製程式碼 程式碼如下:

function AppendSpan()
{
$('#mydiv') .append('Some TExt');
//Then I want to handle the keypress event on the inserted span
$('# someid').keypress(function(event){
//do something here
alert(this.id);
}).focus();// bring focus to the element once you append it ..
}

追加:
兩個方法來引發事件,(事實上需要使用contenteditable屬性),不確定你是否能接受這種情況
1、包裹一個可編輯span在另一個的外層,並且設定它的屬性contenteditable="false"
demo js:
複製程式碼



複製程式碼


程式碼如下:


function AppendSpan()
{
$('#mydiv').append('Some TExt');
//Then I want to handle the keypress event on the inserted span
$('#someid'). keypress(function(event){alert('test');});
}



複製代碼

程式碼如下:

editable follows:
2 、讓你的#mydiv處於非編輯狀態,當你需要觸發span的鍵盤事件時demo js:



複製程式碼



複製程式碼


程式碼如下:

function AppendSpan()
{
$('#mydiv').removeAttr('contenteditable').append('Some TExt'); //Then I want to handle the keypress event on the inserted span $('#someid').keypress(function(event) {alert('test');}); } $(function() { $('#mydiv').keypress(function(event){AppendSpan();} );
});


demo html:

複製程式碼複製程式碼複製程式碼複製程式碼複製程式碼複製程式碼複製程式碼複製程式碼複製碼🎜>
editable follows:
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

底線在鍵盤上怎麼打 如何不打字只打底線 底線在鍵盤上怎麼打 如何不打字只打底線 Feb 22, 2024 pm 07:46 PM

將輸入法調至英文後按住Shift鍵和減號鍵即可。教學適用型號:聯想AIO520C系統:Windows10專業版版本:MicrosoftOfficeWord2022解析1先檢查輸入法的中英文打字,調整至英文。 2然後同時按住鍵盤上的Shift鍵和減號鍵。 3檢查介面,即可查看已打出的底線。補充:Word文件如何快速輸入底線1如果需要在Word中輸入下劃線,用滑鼠選取空格後,選擇字體選單中選擇底線類型即可輸入。總結/注意事項一定要先將輸入法換至英文再進行操作,否則無法成功輸入底線。

Windows筆記型電腦上的鍵盤自動打字 Windows筆記型電腦上的鍵盤自動打字 Feb 19, 2024 pm 05:33 PM

電腦的輸入設備如鍵盤和滑鼠都需要人類操作,不能獨立運作。 Windows筆記型電腦上的觸控板和鍵盤也是一樣。文字不會自動輸入,滑鼠也不會自動點擊。若發生異常情況,一定有原因。如果遇到筆記型電腦鍵盤自動輸入問題,請按照指南進行修復。 Windows筆記型電腦上的鍵盤會自動打字當您的Windows筆記型電腦上的鍵盤自動打字時,您可以透過以下方式進行修復。手動檢查鍵盤確保鍵盤工作正常檢查筆記型電腦是否已遠端連接檢查是否有任何自動打字程式正在運行運行惡意軟體掃描調整鍵盤設定重新安裝鍵盤驅動程式讓我們詳細了解

邁從 K87 三模機械鍵盤新增「風信子軸」「冰淇淋軸」版:Gasket 結構,首發價 299 元起 邁從 K87 三模機械鍵盤新增「風信子軸」「冰淇淋軸」版:Gasket 結構,首發價 299 元起 Feb 29, 2024 pm 05:00 PM

本站2月29日消息,邁從今日為K87三模機械鍵盤推出了“風信子軸”“琉光冰淇淋軸”兩款版本,該鍵盤主打“Gasket結構、80%配列”,相關軸體鍵盤價格資訊如下:「風信子軸」版:首發價299元「琉光冰淇淋軸」版:首發價379元據介紹,系列鍵盤使用Gasket結構,採用87鍵80%配列,全鍵無衝,支持熱插拔,號稱選用“原廠/MDA雙色PBT鍵帽”,使用1.2mm單鍵開槽PCB(下燈位),配備RGB燈效,並擁有磁吸收納銘牌設計。此外,這款鍵盤配備6000毫安培電池,無線延遲3ms,官方未公佈鍵盤尺寸及

如何在Windows 11的任何鍵盤上指派Copilot按鈕 如何在Windows 11的任何鍵盤上指派Copilot按鈕 Feb 20, 2024 am 10:33 AM

未來幾個月將推出的Windows11電腦鍵盤上將新增一個Copilot鍵。此鍵可讓使用者在不升級新PC的情況下,透過按下指定按鈕輕鬆進入副駕駛模式。本指南將詳細介紹如何在任何Windows11鍵盤上設定副駕駛按鈕。微軟近日宣布,他們在推動人工智慧輔助駕駛方面取得了重要進展。 Windows11將新增一個專門的Copilot金鑰,進一步提升個人電腦使用者的體驗。這項硬體變化代表了WindowsPC鍵盤三十年來的首次重大升級。接下來幾個月,新的Windows11電腦將會搭載全新的Copilot鍵設計在鍵盤

蘋果手機鍵盤怎麼設定手寫輸入法 蘋果手機鍵盤怎麼設定手寫輸入法 Mar 08, 2024 pm 02:30 PM

蘋果手機鍵盤使用者想要設定手寫輸入法,但不知道怎麼操作,其實是很簡單的,使用者可以在手機的鍵盤設定直接選擇手寫輸入法輸入,如果沒有也可以手動加入手寫輸入法。蘋果手機鍵盤怎麼設定手寫輸入法答:在鍵盤設定中直接啟用手寫輸入法1、蘋果用戶在使用輸入法的時候,預設是會開啟手寫輸入法的。 2.用戶只需要在打字的時候直接點擊左下角長按選擇手寫輸入法就可以了。 3.如果使用者的手機裡面沒有手寫輸入法也可以進行手動的新增。 4.用戶進入設定找到通用鍵盤設定在第一個鍵盤裡面添加手寫輸入的選項就可以了。 5.使用手寫輸入法可

VGN 聯名《艾爾登法環》鍵鼠系列產品上架:菈妮 / 褪色者定制主題,首發 99 元起 VGN 聯名《艾爾登法環》鍵鼠系列產品上架:菈妮 / 褪色者定制主題,首發 99 元起 Aug 12, 2024 pm 10:45 PM

本站8月12日消息,VGN於8月6日推出了聯名《艾爾登法環》鍵鼠系列產品,包含鍵盤、滑鼠和滑鼠墊,採用菈妮/褪色者客製化主題設計,目前系列產品已上架京東,售價99元起。本站附聯名新品資訊如下:VGN丨艾爾登法環S99PRO鍵盤此鍵盤採用純鋁合金外殼,輔以五層消音結構,使用GASKET板簧結構,擁有單鍵開槽PCB、原廠高度PBT材質鍵帽、鋁合金個人化背板;支援三模連接和SMARTSPEEDX低延遲技術;接入VHUB,可一站式管理多款設備,首發549元。 VGN丨艾爾登法環F1PROMAX無線滑鼠該滑鼠

微信鍵盤怎麼設定皮膚 微信鍵盤皮膚的設定方法 微信鍵盤怎麼設定皮膚 微信鍵盤皮膚的設定方法 Mar 13, 2024 am 09:04 AM

  微信鍵盤怎麼設定皮膚?微信鍵盤是一款非常聰明的手機輸入法軟體,這個軟體上面有好多人性化的功能,它可以讓用戶自己選擇輸入模式,還可以在這個軟體上面以最快的速度找到自己想要的表情然後發出去。這個軟體上面還可以讓用戶自己更換鍵盤的皮膚,很多用戶都還不太清楚要怎麼更換皮膚,下面小編整理了皮膚的更換方式供大家參考。微信鍵盤皮膚的設定方法在手機的微信、簡訊或其他需要使用鍵盤的應用程式中,您可以點擊鍵盤左上角的輸入法設定圖標,進入設定頁面查看各種輸入法的功能設定選項。  2、在輸入法的設定頁點選「個性皮膚

怎麼解決筆記本鍵盤無反應的問題 怎麼解決筆記本鍵盤無反應的問題 Jan 15, 2024 pm 04:45 PM

據悉,一些在剛買筆記本的朋友,對筆記本不是太熟悉,剛買回來覺得好好的,可是之後就打不出字來了,這是怎麼一回事呢?有些用戶會以為是購買的筆記本有問題,其實也不一定是那樣,為此,小編給大家整理了筆記本鍵盤沒反應的解決方法。筆記本鍵盤失靈怎麼回事?這裡的筆記本鍵盤失靈有2種情況,其中一種是比較常見的按字母鍵會顯示成數字的情況發生,另一種情況是,出現筆記本鍵盤失靈,按下去沒任何反應,那麼該怎麼去解決筆記本鍵盤沒反應呢?下面,小編就來跟大家說說筆記本鍵盤失靈該怎麼解決。筆記本鍵盤失靈第一步:檢查硬體設備如

See all articles