我們實施了具有輔助功能的響應網站。它內置在Angular 1.x中。我想知道用戶是否通過輔助功能訪問網站。如何在JavaScript中訪問設備參數?檢測訪問我們網站的用戶訪問功能
回答
有很多輔助技術的用戶中非常不同的現實:各種軟件和/或硬件,用於各種殘疾。 因此你的問題是模糊的:你想檢測屏幕閱讀器?屏幕放大鏡?指向不能用手的人(用聲音和/或他們的眼睛驅動)?閱讀有助於解決dys問題?別的東西?正如你所看到的,輔助技術的範圍非常廣泛,並且通常有很多方法來定製他們,因爲有用戶。
但是,無論您試圖檢測什麼,答案總是基本相同:沒有100%的證明解決方案,大多數解決方案只適用於某些特定情況。 例如,如果您在stackoverflow或其他任何地方搜索如何檢測用戶是否有鍵盤,鼠標,觸摸屏等,您將看到有不同的答案,但在所有情況下,它們都不是100%確切或完美的。 你可能會得到或多或少明顯的線索,他有或沒有這個或那個,但你永遠不會100%確定;有時候,你只有在一段時間後才能確定一部分。
爲了檢測屏幕閱讀器或放大鏡,難度難度更大。什麼是典型的scren閱讀器用戶?鍵盤,沒有鼠標,沒有觸摸?也許不是。如果我有足夠的視力區分主要區域,但是不足以精確點擊具有小圖標的按鈕,該怎麼辦? 如果我正在使用聽寫軟件,出於某種原因無法使用鍵盤,或者因爲現在我的雙手很忙,該怎麼辦? 在iOS上有VoiceOver,所以屏幕閱讀器可能有觸摸屏。等等。
而且有與檢測另一個問題:我有一個鼠標,但它並不意味着我一定會使用它。那些可以在筆記本電腦模式和平板電腦模式之間切換的電腦呢?相反,我可以成爲屏幕閱讀器用戶,並且可能由於誤會而使鼠標移動一點。 你的網站只會對我的內容做出錯誤的結論,並會給我一個不適當的界面。
啊,和另一個決賽之一:如果我是盲人,試圖使用你的網站,不設法做到這一點,最後調用一個有遠見的人來幫助我嗎?該人將無法幫助我,因爲您的網站採用了屏幕閱讀器界面?
這裏是一個道理:不要認爲什麼用戶已經或沒有他/她是誰,或者是沒有什麼。 認爲用戶可以同時使用所有輸入手段,或者他可以隨時更改它們。
闖到大是faoul:給替代文本,讓您的組件訪問所有的時間,不僅當你知道用戶正在使用屏幕閱讀器。
設計你的東西,而你並不需要的設備檢測,因爲大多數,你可以一個方式。
使用屏幕閱讀器的用戶使用標準瀏覽器(Firefox,Chrome,Internet Explorer/Edge,...)。他們通過可訪問性API向屏幕閱讀器提供關於頁面結構的信息。但是不可能知道用戶是否使用可訪問性API。
當然,您可以跟蹤簡單的事情,比如用戶是否通過跟蹤onmousemove
事件來使用鼠標,或者用戶是否使用鍵盤(例如通過onkeyup
事件)。屏幕閱讀器將模擬某些操作,如focus()
,click()
但不是所有標準鍵盤/鼠標事件。你還必須考慮觸摸事件。
- 1. 檢測用戶在訪問我的網站前在Rails中訪問的網址
- 2. 用戶無法訪問我的網站
- 3. 網站檢測「內部訪問」
- 4. 如何檢測用戶訪問的外部網站
- 5. 如何檢測用於訪問我的網站的瀏覽器?
- 6. 檢測訪問的網頁
- 7. 只有當我授予他們訪問權限時才能訪問網站
- 8. 客戶端在他們的網站之後訪問的檢測頁面
- 9. 如何檢測其用戶訪問我的網站的Android或iPhone?
- 10. goDaddy網站拒絕訪問數據庫用戶的訪問
- 11. 用戶訪問該網站的請求
- 12. PHP訪客訪問網站
- 13. 訪問功能
- 14. 訪問功能
- 15. 網站用戶帳號目錄訪問
- 16. 跟蹤Facebook用戶訪問網站
- 17. 用戶訪問限制網站
- 18. 阻止用戶訪問網站
- 19. 防止Adblock用戶訪問網站?
- 20. 訪問iframe網站
- 21. SharePoint訪問網站
- 22. 在訪問網站
- 23. 檢查網站的第一次訪問
- 24. 如何訪問網站的CMS只能訪問數據庫
- 25. 從互聯網上的網站訪問javascript功能
- 26. 使用PhoneGap訪問網站
- 27. 如何將訪問者限制爲訪問我網站的訪問者
- 28. Firebase HTTP功能訪問用戶ID?
- 29. 當我訪問我的網站時,我能夠收集哪些用戶信息
- 30. 獲取我們的ASP.NET網站用戶的最後訪問頁面?