.為什么使用無障礙輔助功能?
無障礙輔助功能是使得輔助技術(shù)正確解讀網(wǎng)頁的必要條件。
2.標準和指南
- WCAG網(wǎng)絡(luò)內(nèi)容無障礙指南(Web Content Accessibility Guidelines,WCAG) 為開發(fā)無障礙網(wǎng)站提供了指南。
- WAI-ARIA網(wǎng)絡(luò)無障礙倡議 – 無障礙互聯(lián)網(wǎng)應(yīng)用(Web Accessibility Initiative – Accessible Rich Internet Applications) 文件包含了創(chuàng)建完全無障礙 JavaScript 部件所需要的技術(shù)。
注意: JSX 支持所有 aria-* HTML 屬性
<input
type="text"
aria-label={labelText}
aria-required="true"
onChange={onchangeHandler}
value={inputValue}
name="name"
/>
3.語義化的HTML
語義化的 HTML 是無障礙輔助功能網(wǎng)絡(luò)應(yīng)用的基礎(chǔ)。
利用多種 HTML 元素來強化您網(wǎng)站中的信息通??梢允鼓苯荧@得無障礙輔助功能。
3.1:使用 React Fragments 來組合各個組件
3.2:可以把一系列的對象映射到一個 fragment 的數(shù)組中
3.2:當不需要在 fragment 標簽中添加任何 prop 且你的工具支持的時候,可以使用 短語法:
4.無障礙表單
- 標記
- 所有的 HTML 表單控制,例如 <input> 和 <textarea> ,都需要被標注來實現(xiàn)無障礙輔助功能。
- for在JSX中被寫作htmlFor
- 在出錯時提醒用戶
- 控制焦點
- 鍵盤焦點及焦點輪廓
- 跳過內(nèi)容機制
- 使用程序管理焦點
- 用 DOM 元素的 Refs 在 React 中設(shè)置焦點
- 有時,父組件需要把焦點設(shè)置在其子組件的一個元素上。我們可以通過在子組件上設(shè)置一個特殊的 prop 來對父組件暴露 DOM refs 從而把父組件的 ref 傳向子節(jié)點的 DOM 節(jié)點。
焦點管理示例插件:react-aria-modal5.鼠標和指針事件
確保任何可以使用鼠標和指針完成的功能也可以只通過鍵盤完成。
示例2:onBlur、onFocus
6.更復(fù)雜的部件
7.其他考慮因素
- 設(shè)置語言
- 設(shè)置文檔標題
- 可以使用 React 文檔標題組件(React Document Title Component)來設(shè)置標題
- 色彩對比度
8.開發(fā)及測試
- 鍵盤
- 斷開鼠標
- 使用 Tab 和 Shift+Tab 來瀏覽。
- 使用 Enter 來激活元素。
- 當需要時,使用鍵盤上的方向鍵來和某些元素互動,比如菜單和下拉選項。
- 開發(fā)輔助
- eslint-plugin-jsx-a11y插件
- 啟用更多的無障礙規(guī)則,可以在項目的根目錄中創(chuàng)建一個有如下內(nèi)容的 .eslintrc 文件:
- 在瀏覽器中測試無障礙輔助功能
- aXe、aXe-core、react-axe
- WebAIM WAVE
- 無障礙輔助功能檢測器和無障礙輔助功能樹
- 屏幕朗讀器
- 常用屏幕朗讀器
- 火狐中的 NVDA
- Safari 中的 VoiceOver
- Internet Explorer 中的 JAWS
- Google Chrome 中的 ChromeVox
天章魚貓給大家?guī)淼拈_源項目啊,安卓同學估計都會非常的喜歡。因為這是一個支持無障礙服務(wù)的 Android 平臺上的 JavaScript IDE,其發(fā)展目標是 JsBox 和 Workflow。
而且同時有 VS Code 插件可提供基礎(chǔ)的在桌面開發(fā)的功能。
這個開源項目就是:Auto.js,安卓平臺上的 JavaScript 自動化工具。
它的特性如下:
- 由無障礙服務(wù)實現(xiàn)的簡單易用的自動操作函數(shù)
- 懸浮窗錄制和運行
- 更專業(yè) & 強大的選擇器 API,提供對屏幕上的控件的尋找、遍歷、獲取信息、操作等。類似于 Google 的 UI 測試框架 UiAutomator,您也可以把他當做移動版 UI 測試框架使用
- 采用 JavaScript 為腳本語言,并支持代碼補全、變量重命名、代碼格式化、查找替換等功能,可以作為一個 JavaScript IDE 使用
- 支持使用 e4x 編寫界面,并可以將 JavaScript 打包為 apk 文件,您可以用它來開發(fā)小工具應(yīng)用
- 支持使用 Root 權(quán)限以提供更強大的屏幕點擊、滑動、錄制功能和運行 shell 命令。錄制錄制可產(chǎn)生 js 文件或二進制文件,錄制動作的回放比較流暢
- 提供截取屏幕、保存截圖、圖片找色、找圖等函數(shù)
- 可作為 Tasker 插件使用,結(jié)合 Tasker 可勝任日常工作流
- 帶有界面分析工具,類似 Android Studio 的 LayoutInspector,可以分析界面層次和范圍、獲取界面上的控件信息
這個軟件與按鍵精靈等軟件不同,主要區(qū)別是:
- Auto.js 主要以自動化、工作流為目標,更多地是方便日常生活工作,例如啟動游戲時自動屏蔽通知、一鍵與特定聯(lián)系人微信視頻(知乎上出現(xiàn)過該問題,老人難以進行復(fù)雜的操作和子女進行微信視頻)等
- Auto.js 兼容性更好。以坐標為基礎(chǔ)的按鍵精靈、腳本精靈很容易出現(xiàn)分辨率問題,而以控件為基礎(chǔ)的 Auto.js 則沒有這個問題
- Auto.js 執(zhí)行大部分任務(wù)不需要 root 權(quán)限。只有需要精確坐標點擊、滑動的相關(guān)函數(shù)才需要 root 權(quán)限
- Auto.js 可以提供界面編寫等功能,不僅僅是作為一個腳本軟件而存在。
而且這個開源項目,還有自己的官網(wǎng)文檔,截圖如下:
介紹啊,內(nèi)容都非常的全面而且細致。
主要功能有:
真的非常好,有興趣的同學趕緊去 star ,支持一波吧!
開源項目地址:https://github.com/hyb1996/Auto.js
開源項目作者:Stardust
今天的推薦不知道大家喜歡嗎?如果你喜歡,請在文章底部留言和點贊,以表示對我的支持,你們的留言、點贊和轉(zhuǎn)發(fā)關(guān)注是我持續(xù)更新的動力哦!
障礙臺階在實際的項目中很常見
就像這樣
▼
這些造型不僅美觀
還很實用
那小吧也來裝X挑戰(zhàn)一下吧
▼
好了,下面請看我的表演
視頻教程
<script src="https://lf6-cdn-tos.bytescm.com/obj/cdn-static-resource/tt_player/tt.player.js?v=20160723"></script>
視頻錄制——SketchUp吧彈指神通
視頻同款模型領(lǐng)取地址:subar.me/thread-382777-1-1.html
圖文教程
*教程中所使用的插件都來自SUAPP中文插件庫!
首先我們看到的是平面圖。
先來把相鄰的兩塊梯步分別進行【生成樓梯】(SUAPP編號409)快速搞定!
進入其中一個梯步群組,將斜坡位子補充好。
另一邊也是一樣,注意兩邊斜坡的位置要持平。
再手動將斜坡補充好,這一部分的梯步就做好了。
同樣的方式再把另外的部分完成。
完成的樣子。
沒錯就是這么簡單,其實我還有更簡單的方法!一個插件【對象切割】(SUAPP編號298)搞定!
好了,裝X結(jié)束,你學會了嗎
任何人沒學會我都會傷心的