線上記分板是一種以瀏覽器為基礎、雙隊計分的顯示工具,只接受四種離散調整——−1、+1、+2 和 +3——並將每個分數嚴格限制在 0 到 9,999,999 之間的數值範圍內。它不理解任何特定運動;它是一個通用的狀態機,負責讀取隊伍標籤、套用允許的差值,並以高對比的表格方式呈現兩隊目前的總分。由於狀態僅保存在當前的分頁中,因此隊伍名稱或分數的相關資訊都不會離開裝置,重新整理頁面會將兩個分數歸零。這個工具的目的是為房間中的休閒遊戲、課堂測驗、桌遊活動或練習演練,提供一個單一且明確的單一事實來源,無需帳號、網路同步或後端儲存。每個控制項都遵循明確的規則——減分以零為下限、加分在上限前停止、完整重置需要兩步驟確認——因此顯示的數字永遠對應於從前一狀態可驗證的轉換。

online scoreboard explained
線上記分板說明:規則、按鈕與限制

線上記分板的適用範圍

線上記分板,簡單來說,是一個完全在單一瀏覽器分頁內運作的數位計分介面。本文說明的版本刻意設計得相當精簡:它顯示兩個欄位,一個給 A 隊,一個給 B 隊,外加一組小型的控制項,用來變更每個標籤下顯示的整數。它沒有時間軸、沒有球員名單、沒有節數計數器,也沒有計時器。任何超出整數計分的功能,都屬於另一個不同的工具。

點明記分板不做哪些事情是有幫助的,因為「計分板」這個詞常被用來指稱差異極大的產品:

  • 它並未實作籃球、網球、板球、排球、桌球或任何具名運動的規則。
  • 它不知道進球、局數、 innings(局)、犯規、控球權、發球順序、deuce(平分)或搶七等概念。
  • 它不會追蹤獲勝條件,因此不會宣告贏家或宣布平手。
  • 它不會寫入 localStorage、不會跨裝置同步,也不會將分數傳送到伺服器。
  • 它不提供裁判鎖定、稽核紀錄、復原歷史或防竄竄竄改證據。

當目標是一個透明、本地端、房間內任何人都能一目了然的計數時,這樣的範圍是一項特色,而非限制。

允許的分數增減幅度

計分邏輯是任何記分板的核心,而這裡的規則異常嚴格:永遠只接受四種差值:減一、加一、加二和加三。其他情況——一次五分、十分、半分、自訂數值——都會被底層的狀態層直接拒絕。這就是為什麼控制項標示為 −1、+1、+2 和 +3,而不是提供自由格式的輸入欄位。

按鈕對所選隊伍的效果被拒絕的時機
−1將該隊分數減 1當分數已為 0 時已停用;減分不能產生負值
+1將該隊分數加 1若結果會超過 9,999,999 則被拒絕
+2將該隊分數加 2若結果會超過 9,999,999 則被拒絕
+3將該隊分數加 3若結果會超過 9,999,999 則被拒絕

+2 和 +3 按鈕是為了一次給予該分數的活動所提供的便利;它們並不表示任何特定運動會使用它們。如果活動一次只給一分,請直接忽略較大的按鈕。僅使用與活動相符的增減幅度,才能讓顯示的總分保持意義,因為這個工具絕不會在背後偷偷把不支援的數值強制轉換成下一個合法的數值。

如何使用線上記分板

  1. 在瀏覽器分頁中開啟 線上記分板。兩個預設欄位已標示為 A 隊和 B 隊,兩邊分數皆為零。
  2. 點擊 A 隊名稱欄位,輸入第一隊的簡短標籤。B 隊亦同。名稱最多接受 40 個一般字元;控制字元會被拒絕,空白欄位會回復為原本的 A 隊或 B 隊標籤,以維持按鈕的可讀性。
  3. 當該隊得分時,按下該隊下方的 +1、+2 或 +3。分數會立即在高對比顯示中更新。
  4. 按下 −1 以修正多計的分數。當顯示的分數已為零時,該按鈕會自動停用,以防止意外產生負數。
  5. 如需將單一隊分數歸零,請使用該隊專用的重置按鈕。另一隊的分數與兩邊的隊名都會保持不變。
  6. 只有在整場比賽或整個階段結束時,才按下「重置兩個分數」。第一次按下會將標籤變更為「確認重置兩個分數」並顯示清楚的狀態訊息;在該已進入準備狀態下再次按下,即可將兩個總分歸零並保留隊名。按下「取消」則不會變更任何內容。
  7. 在活動結束前,請將最終顯示與任何獨立的紀錄進行比對。重新整理、關閉或離開分頁都會清除資料,因此請勿依賴瀏覽器記住結果。

重置行為:單隊重置 vs 完整重置

重置是最容易造成混淆的地方,因為兩個重置控制項的行為差異極大。每個隊伍都有自己的立即重置按鈕,只需按一次就會生效,並保留另一隊的分數、兩邊的隊名,以及任何待處理的確認狀態。當某一方提前開始、不慎計分,或需要在循環賽式的活動各輪之間清除時,這種單隊重置是正確的選擇。

相對地,完整重置刻意設計為兩步驟。第一次按下並不會將任何東西歸零;它只會將按鈕標籤變更為「確認重置兩個分數」,並顯示一則禮貌的即時區域狀態訊息。在該準備狀態下的第二次按下會執行實際的重置,同時保留兩邊的隊名。任何分數變更、名稱編輯或「取消」控制項都會解除待處理的重置,因此周圍狀態一旦變更,待確認的狀態絕不會殘留。

動作A 隊分數B 隊分數隊伍名稱是否需要確認
僅重置 A 隊設為 0不變保留
僅重置 B 隊不變設為 0保留
重置兩個分數(第一次按下)不變不變保留進入待確認狀態
確認重置兩個分數(第二次按下)設為 0設為 0保留是,必須明確兩步驟
取消不變不變保留解除待確認狀態

數值邊界、驗證與數字停止的位置原因

每個分數都以非負整數儲存,必須維持在 0 到 9,999,999(含)之間。狀態層在每次動作時都會驗證這一點,這就是為什麼在零分時執行減分會無聲地停在零,而不是產生 −1;而會使總分超過上限的加法,則會以溢位提示拒絕,而不是數值迴繞。相同的驗證機制也會拒絕任何非整數、不安全或已超出範圍的值,而不是強制轉換。這種明確的行為讓記分板可被驗證:顯示的數字永遠可以從前一顯示數字,透過四種合法操作之一到達。

9,999,999 的上限是一項軟體安全限制,而非任何聯盟的規則。它的存在是為了確保高對比顯示在瀏覽器分頁中始終清晰呈現,避免底層狀態被推入會破壞版面配置的字串,並讓驗證邏輯保持易於稽核。如果某個活動實際上需要更大的分數,具備真正資料庫的錦標賽系統才是合適的工具——這個記分板並非如此。

隱私與資料保存模型

記分板所知道的一切都存在於使用中的瀏覽器分頁內。沒有任何隊名、分數或按鈕操作會被上傳到伺服器、寫入 localStorage,或透過連結分享。沒有帳號、沒有共享房間,也沒有遠端裝置會反映這些總分。這意味著在房間內從你身後瞥見畫面的人會看到相同的數字,但在不同裝置上的第二個人則什麼都看不到。

這也表示,只要分頁保持開啟,它就是事實來源。重新整理、關閉或離開分頁,會將兩個分數歸零,並將兩個名稱恢復為預設值。這種刻意的非保存機制,避免了在借用裝置上留下參與者標籤,也防止陳舊的分數在稍後的活動中無聲地重新出現;但這也使這個工具無法作為必須在瀏覽器當機、爭議或正式審查中存留的結果之唯一紀錄。對於超出休閒計數範疇的情境,請在進行的同時以獨立方式記錄結果。

無障礙與鍵盤操作行為

由於控制項都是原生 HTML 按鈕 和文字輸入欄位,按下 Tab 鍵會依照它們在視覺上出現的相同順序移動焦點:隊伍名稱、計分按鈕、該隊重置,最後是全域重置區域。聚焦的按鈕可依正常的瀏覽器行為以 Enter 或空白鍵啟用,因此計分員可以在不使用滑鼠的情況下,僅透過鍵盤操作整個記分板。

每個變更分數的按鈕都帶有 ARIA 標籤,內容包含操作本身與目前的顯示名稱,因此螢幕閱讀器會朗讀類似「為紅隊加一分」,而不只是「加一」。分數輸出具有對應的無障礙標籤,而狀態訊息——例如溢位警告或已進入準備狀態的重置確認——會顯示於 polite live region 中,使其在朗讀時不會搶走焦點。已停用的減分與單隊重置控制項會傳達出目前顯示分數已為零的訊息,消除了無聲停用按鈕所帶來的歧義。