2024年9月5日 星期四

JavaScript : 同時按下多個按鈕無效的處理

2024年9月5日 星期四

在多點觸控的系統中,如果同時按下多個按鈕,會是什麼結果?被按下的按鈕都會有反應嗎?

這幾天在將 2010 年寫的分組搶答工具 TeamPlay (參考舊文: 雄:Teaching : TeamPlay 分組競爭提高學習樂趣 ) 改為 HTML5 版,昨天和小孩在測試時,兩個人在 iPad 上同時按下按鈕時,才發現按鈕居然沒反應,哈!傷腦筋,但也覺得很開心,又發現新問題了!

[圖1] 實驗中的 HTML5 TeamPlay

底下來做個小實驗,在支援多點觸控的裝置上,同時按下多個紅色按鈕,看有沒有反應;再同時按下多個綠色按鈕,看有沒有反應:

輸出結果


這兩種顏色的按鈕在設計有什麼差別呢?

紅色按鈕在按下時,會觸發 click 事件;而綠色按鈕在按下時,則是觸發 touchstart 事件。很明顯地,像 TeamPlay 這種搶答的工具,必須要能接受同時按下多個按鈕的情況,所以答案的按鈕不能使用 click ,不然遇到同時按下多個按鈕時,會沒有反應,而無法送出答案,中斷接下來的程序。

相關連結



沒有留言:

張貼留言

 
雄::gsyan © 2009. Design by Pocket