首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

简单了解下无障碍设计模式

通过在 UI 元素添加描述性的标签,使用户可以通过声音在应用中导航。当使用屏幕阅读器( “TalkBack” ),并通过触摸板导航,在用户指尖触摸到 UI 元素,会大声读出标签上的文本。...用户也可以在屏幕向前或向后滑动来移动焦点,来从上到下线性地阅读页面。这允许用户在某些元素上进行训练。在 TalkBack 中,这称为线性导航。...重要操作:重要操作放在屏幕的顶部或底部(使用快捷方式即可访问) 相关项目:将相似层级的相关项目放在彼此相邻的位置 正确示例 通过把重要的操作放在屏幕顶部,使它们在层次结构中显得更重要。...错误示例 当把重要的操作嵌入到其他内容中,就不清楚什么是页面中最重要的元素。 焦点顺序 输入焦点应该按照视觉布局的顺序排列,从屏幕顶部到底部。它应该从最重要的项目到最不重要的项目进行遍历。...这些分组会在空间组织内容。 过渡 屏幕和任务之间的焦点遍历应尽可能保持连续。 如果一个任务中断了,然后又恢复,请将焦点放在之前聚焦的元素。 绿色圆圈表示屏幕中的元素接收焦点的顺序。

4.7K40

JavaScript(十三)

在重置表单,所有表单字段都会恢复到页面加载完毕的初始值。如果某个字段的初始值为空,就会恢复为空; 而带有默认值的字段,也会恢复为默认值。...用户单击重置按钮重置表单,会触发 reset 事件,利用这个机会,我们可以在必要时取消重置操作。 表单字段 可以像访问页面中的其他元素一样,使用原生 DOM 方法访问表单元素。...,表示当前字段是否只读 type: 当前字段的类型, “checkbox”、”radio” 等等 value: 当前字段将被提交给服务器的值 共有的表单字段方法 每个表单字段都有两个方法: focus...共有的表单字段事件 所有表单字段都支持下列 3 个事件: blur: 当前字段失去焦点触发 focus: 当前字段获得焦点触发 change: 对于 input 和 textarea 元素,在它们失去焦点且...的字段,在提交表单都不能空着。

3.3K20
您找到你想要的搜索结果了吗?
是的
没有找到

【译】W3C WAI-ARIA最佳实践 -- 布局

Enter: 禁用网格导航以及: 如果单元格包含可编辑内容,焦点放置在输入框中,例如 textbox。...如果输入框是个单行文本框,连续按 Enter ,会重置网格导航功能,或移动焦点到附近单元格的输入框中。 如果单元格包含一个或多个组件,焦点放置在第一个组件。...F2: 如果单元格包含可编辑的内容,则会将焦点放在输入字段中,例如 textbox。随后按下 F2 恢复网格导航功能。 如果单元格包含一个或多个组件,焦点放置在第一个组件。...字母数字键: 如果单元格包含可编辑的内容,则会将焦点放在输入框中,例如 textbox。 当网格导航被禁用时,导航行为的常规更改包括: Escape: 恢复网格导航。...如果存在某些行或列在DOM中被隐藏或不存在的情况,例如当滚动自动加载数据,或者网格提供了隐藏行或列的功能,使用以下属性,grid and table properties 所述。

6.1K50

小程序-云开发-如何对敏感词进行过滤即内容安全的检测(下)

小程序端进行文本内容的弱校验,减少API的请求 如何涉及违规的文本内容用*号代替,进行过滤处理 云函数调用方式的优点(推荐使用) 本文重点在于 学会如何在小程序云开发中的云函数后端进行配置,实现文本内容的校验...('聚焦焦点'); }, // 失去焦点 onBlur(event) { console.log("失去焦点"); // 前端可进行手动的弱校验,也可以在失去焦点发送请求进行文本的校验...(输入一段违规的文本进行校验,点击图片可查看) 当您输入符合规则的文本,便会返回成功的状态码,以及对应合规的信息提示 ?...onBlur(event) { console.log("失去焦点"); // 前端可进行手动的弱校验,也可以在失去焦点发送请求进行文本的校验,但是每次失去焦点就请求一次,这样是消耗云资源的...onFocus() { console.log('聚焦焦点'); }, // 失去焦点 onBlur(event) { console.log("失去焦点");

3K10

180多个Web应用程序测试示例测试用例

7.禁用的字段应显示为灰色,并且用户不应将重点放在这些字段。 8.单击输入文本字段后,鼠标箭头指针应变为光标。 9.用户应该不能输入下拉选择列表。...14.默认的单选选项应在页面加载预先选择。 15.特定领域和页面级别的帮助消息应该可用。 16.如果出现错误,请检查是否突出显示了正确的字段。...3.检查页面上是否有任何具有默认焦点字段(通常,焦点应设置在屏幕的第一个输入字段)。 4.在关闭父窗口/打开器窗口,检查子窗口是否已关闭。...6.表列应具有可用的描述信息(除了审计列,创建日期,创建者等) 。7.对于每个数据库,应添加添加/更新操作日志。 8.应该创建所需的表索引。 9.仅当操作成功完成,才检查是否数据提交到数据库。...22.在数据提交到数据库之前,应截断输入字段的前导空格和尾随空格。 23.主键列中不允许使用空值。 图像上传功能的测试方案 (也适用于其他文件上载功能) 1.检查上载的图像路径。

8.1K21

【译】W3C WAI-ARIA最佳实践 -- 表单

+ 当 menu 打开,或者当 menubar 接收焦点,键盘焦点设置在第一个项目。所有项目都是可聚焦的, Keyboard Navigation Inside Components。...+ Enter: - 当焦点位于一个具有子菜单的 menuitem ,打开子菜单并将焦点放在其子菜单的第一个项目。 - 否则,激活该项目并关闭菜单。...- (可选):当焦点位于一个具有子菜单的menuitem,打开子菜单并将焦点放在其子菜单的第一个项目。...+ Down Arrow: - 当焦点在 menubar 里的一个 menuitem ,打开它的子菜单,并将焦点放在子菜单中的第一个项目。...任何其他字符输入不会更改文本字段的内容和按钮的值。 NOTE 操作过程中焦点仍在文本字段。 适用于设备平台的标准单行文本编辑键: 包括输入键,光标移动,选择和文本操作。

8.2K30

JavaScript(十二)

事件流 ---- 最早的两大浏览器厂商(IE 及 Netscape)在如何在看待浏览器事件方面还是一致的。比如说,如果你单击了某个按钮,他们都认为单击事件不仅仅发生在按钮。...UI(User Interface,用户界面)事件,当用户与页面上的元素交互触发 焦点事件,当元素获得或失去焦点触发 鼠标事件,当用户通过鼠标在页面上执行操作触发 滚轮事件,当使用鼠标滚轮(或类似设备...)触发 文本事件,当在文档中输入文本触发 键盘事件,当用户通过键盘在页面上执行操作触发 UI 事件 UI 事件指的是那些不一定与用户操作有关的事件。...现有的 UI 事件如下: load: 当页面完全加载后在 window 上面触发,当图像加载完毕在 img 元素上面触发 unload: 当页面完全卸载后在 window 上面触发 error: 当发生...只要用户从一个页面切换到另一个页面,就会发生 unload 事件。而利用这个事件最多的情况是清除引用,以避免内存泄漏。 焦点事件 焦点事件会在页面获得或失去焦点触发。

2.9K20

最新iOS设计规范十|5大拓展程序(Extensions)

用户在“设置”中启用自定义键盘后,他们可以将其用于任何应用程序中的文本输入,但编辑安全文本字段和电话号码字段除外。人们可以启用多个自定义键盘,并可以随时在它们之间进行切换。 ?...加载文件提供程序扩展,其界面显示在包含导航栏的模式视图中。 ? 用户打开或导入文件,仅显示特定于上下文的文档和信息。当用户打开或导入文档,仅显示适合当前上下文的文档。...为了清楚和易于使用,每个消息传递扩展都应具有单个焦点。例如,请勿尝试设计一个贴纸和拼车功能都结合在一起的应用程序。 提供有趣的协作体验。...考虑人们可能想要共享哪些信息,以及他们如何在活跃对话的背景下与您的应用进行交互。 插入内容以避免裁切。应用程序的内容以带有圆角的消息气泡形式显示,因此请不要将重要信息放在拐角处。...仅在必要提供接口。 避免模式视图放在扩展中。默认情况下,扩展显示在模式视图中。尽管在扩展名上方可能会发出警报,但请避免分层附加模式视图。 使用您的主应用程序表示冗长的操作进度。

3.1K10

xwiki开发者指南-一分钟创建App

这种映射的结果是,大多数应用程序的结构化数据存储在对象(XClass)附在应用程序的条目(文档)。事实,在这一步,一分钟创建App向导为你的应用程序创建XClass。...能够轻松备份你的应用程序的数据 更好的整体组织 等等 7.4M1之前 应用程序向导创建一个自定义live table结果页面( Holiday RequestLiveTableResults),为的是按需加载...假设你已经创建了 "External Image"属性类型,让我们看看如何在它的基础添加一个字段类型。 首先你需要创建一个新的wiki页面。wiki页面的标题为新的字段类型的标题。...你需要指定: 字段类别 图标,出现在字段配置面板标题之前;你可以从Silk icon图标集里选择图标,正如上面图片里看到的,或者你可以把一个图标上传到页面然后输入图标的文件名 优先级,字段配置面板中指定类别中的索引...基本,当你在应用程序中添加新的"External Image"字段,该属性模板将被会复制。 保存就大功告成了。现在,让我们创建一个新的应用程序,或者你也可以编辑现有的。

8.3K30

JavaScript 编程精解 中文第三版 十八、HTTP 和表单

聚焦 不同于 HTML 文档中的其他元素,表单字段可以获取键盘焦点。当点击或以某种方式激活,他们会成为激活的元素,并接受键盘的输入。 因此,只有获得焦点,你才能输入文本字段。...JavaScript 可以在页面载入完成焦点放到这些字段,HTML 提供了autofocus属性,可以实现相同的效果,并让浏览器知道我们正在尝试实现的事情。...我们可以编写代码来检测用户输入是否正确并且立刻提示错误信息,而不是提交表单。或者我们可以禁用正常的提交方式,正如这个例子中,让我们的程序处理输入,可能使用fetch将其发送到服务器而不重新加载页面。...localStorage对象可以用于保存数据,它在页面重新加载后还存在。这个对象允许你字符串存储在某个名字(也是字符串)下,下面是具体示例。...页面也可能包含表单,这些表单允许在提交表单,用户输入的信息发送为新页面的请求。 HTML可以表示多种表单字段,例如文本字段、选择框、多选字段和文件选取。

3.8K20

(2019)面试题:HTML5语义化标签和新特性

正题 语义化标签 hgroup 代表网页或者section的标题,当元素有多个层级,该元素可以h1到h6元素放在其内,譬如文章主标题和副标题的组合。...只有一个h1-h6就不要用此标签,多个h1-h6包裹在hgroup,然后可以把hgroup放在header标签里面。...month 选择一个月份 number 数值的输入域 range 一定范围内数字值的输入域 search 用于搜索域 tel 定义输入电话号码字段 time 选择一个时间 url URL 地址的输入域...HTML5新增表单属性 placehoder 属性,简短的提示在用户输入值前会显示在输入。即我们常见的输入框默认提示,在用户输入后消失。 required 属性,是一个 boolean 属性。...规定在页面加载,域自动地获得焦点。 multiple 属性 ,是一个 boolean 属性。规定元素中可选择多个值。    HTML5新特性 新的DOCTYPE声明<!

1.3K00

对于小程序而言,这一点在审核是非常严格的,净化言行,做一个知法守法的人很重要... 接入内容安全检测,规避输入一些违法违规低俗等内容,避免幸辛苦苦开发出来的应用。...02.应用场景 检测小程序用户个人文字资料是否违规 针对特点词汇(过于商业以及营销之类的词)可以进行过滤或禁止输入 在内容发布之前自动检测用户发表的信息(包括评论、留言等)是否违规 03.解决办法 围绕如何处理内容安全检测问题...*/ data: { textareaVal: '' // 页面中需要显示的数据,初始化定义在data下面 }, /** * 生命周期函数--监听页面加载...('聚焦焦点'); }, // 失去焦点 onBlur(event) { console.log("失去焦点"); // 前端可进行手动的弱校验,也可以在失去焦点发送请求进行文本的校验...如果是放在失去焦点就立马请求,这样请求次数会增多,而放在点击发送按钮进行校验,一定程度上可以减少小程序端频繁请求。

1.3K10

【Web技术】850- 深入了解页面生命周期API

好消息是,几乎所有的现代浏览器都通过页面生命周期API这些干预作为事件暴露出来。 页面生命周期API 顾名思义,页面生命周期API网页生命周期的钩子暴露给JavaScript。...在这种情况下,浏览器会自动页面卸载到丢弃状态,释放一些内存。而如果用户再次访问被丢弃的页面,浏览器会重新加载页面,回到活动状态。 值得注意的是,用户一般会在资源受限的设备中体验到丢弃状态。...ACTIVE - 页面可见并有输入焦点。 PASSIVE - 页面可见,但没有输入焦点。 HIDDEN - 页面不可见(也没有冻结)。 TERMINATED - 页面被卸载并从内存中清除。...然而,你可以在页面加载通过检查document.wasDiscarded来对页面的任何恢复做出反应。 好了,现在我们知道在每个状态下要做什么了,让我们看看如何在我们的应用程序中捕获每个状态。...// Page was previously discarded by the browser while in a hidden tab. } 上面提到的wasDiscarded属性可以在页面加载观察

1.3K20

做好内容安全检测,和风险说「再见」!(下)

如何涉及违规的文本内容用*号代替,进行过滤处理。 云函数调用方式的优点解析(推荐使用)。...失去焦点 onBlur(event) { console.log("失去焦点"); // 前端可进行手动的弱校验,也可以在失去焦点发送请求进行文本的校验,但是每次失去焦点就请求一次,这样是消耗云请求的...(输入一段违规的文本进行校验,点击图片可查看) 当您输入符合规则的文本,便会返回成功的状态码,以及对应合规的信息提示。...('聚焦焦点'); }, // 失去焦点 onBlur(event) { console.log("失去焦点"); // 前端可进行手动的弱校验,也可以在失去焦点发送请求进行文本的校验...如果把违规词收集写死放在小程序端,这种方式是不会请求API的,两种方式各有利弊 适合自己的业务才是最好的。

1.2K10

关于无障碍设计的七件事

因为在验证码输入框右边有一个带惊叹号的三角形icon。这个符号通常表明有东西出差错了。 现在,我们再来看看同样的页面。不过这次加上颜色。现在你可以看出有哪些字段处在错误状态吗? ?...但是,有很多方法可以让这个页面做到视觉无障碍:红色三角形icon放在所有出错字段的后面;使用文本来提示和解释为什么这个输入框有错误;使用提示框、粗文本、下划线、斜体字体等等。...缺失二:没有标签的表格 “标签”告诉用户该字段的用途。当焦点输入框内,如今常见的用“占位文本”来替代标签是一种不太好的做法。占位文本通常对比度不高。...当我把鼠标停留在个人简历卡片的时候会变成下图。 ? 突然就有视觉指示告诉我可以单独编辑此页面上的许多字段,包括我的姓名、职位、以及以前的工作、教育经历,还有我的个人资料照片。...当我把鼠标悬停在某块地方,蓝色出现了。 ? 当我提出这种解决方法,有的设计师会说,“感觉有点重了”。 也许从视觉是有一点。但是它是无障碍设计的解决方案。此外,它只出现在用户的个人资料页面上。

3K30

最新iOS设计规范五|3大界面要素:控件(Controls)

子菜单保持在一个层级。虽然子菜单可以缩短情境菜单并说明用户可以执行的命令,但是如果子菜单分还几个层级的话会使得体验变得复杂,并且让用户难以导航。 最常用的项放在情境菜单的顶部。...当用户打开情境菜单,他们的焦点是位于菜单的顶部区域。最常用的项应该放在菜单顶部,以便用户及时找到他们正在寻找的项。 使用分隔符对相关菜单项进行分组。创建可视分组可以帮助用户更快地浏览菜单。...如果有帮助,请在用户等待任务完成为其提供有用的提示信息。可以在加载器上方添加标签以提供额外的上下文信息。避免使用模糊的术语,加载或验证,因为它们通常不会增加任何价值。...不要将所有操作都放在菜单中。菜单可让您提供一系列项目,而不会弄乱您的界面,但是所有操作置于菜单中意味着用户必须至少点击两次才能执行任何操作。最重要的操作放在主界面中,使用菜单提供补充项目。...若有“清除”按钮,点击它便会立即清空文本字段的内容,避免一直点击删除。 适当时候,使用安全文本字段。若需要输入的是敏感数据(密码),请始终使用安全提示类的文本字段

8.5K30

Python 自动化指南(繁琐工作自动化)第二版:二十、使用 GUI 自动化控制键盘和鼠标

注 在撰写本文,PyAutoGUI 无法向某些程序发送鼠标点击或按键,防病毒软件(防止病毒禁用该软件)或 Windows 的视频游戏(使用不同的方法接收鼠标和键盘输入)。...请注意,两个命令放在同一行,用分号隔开,可以防止交互式 Shell 在运行这两个指令之间提示您输入。这可以防止在click()和write()调用之间意外地一个新窗口带入焦点,这会破坏示例。...以下是在表单中输入数据的步骤: 键盘焦点放在name字段,这样按键就可以在该字段中键入文本。 键入一个名称,然后按下Enter。 键入最大的恐惧,然后按下Enter。...一旦加载了新页面,它将有提交另一个响应链接,该链接浏览器导向一个新的空表单页面。...然后,您可以单击文本编辑器的主文本字段,例如,通过使用pyautogui.click()100或200像素添加到top和left属性值,键盘焦点放在那里。

8.2K51

layuiAdmin pro v1.x 【单页版】开发者文档

目录说明 src/ layuiAdmin 源代码,通常用于开发环境(本地),推荐你在本地开发 ....事实,宿主页面可以放在任何地方,但是要注意修改里面的 的 src 和 layui.config 中 base 的路径。...但对应的视图也必须存放在相应的层级目录下 视图中加载 JS 模块 在视图文件中,除了写 HTML,也可以写 JavaScript 代码。...登录拦截器 进入登入页面登入成功后,会在 localStorage 的本地表中写入一个字段: access_token (名称可以在 config.js 自定义)。...[endif]--> 缓存问题 由于单页面版本的视图文件和静态资源模块都是动态加载的,所以可能存在浏览器的本地缓存问题,事实我们也考虑到这个,因此,为了避免改动后的文件未及时生效,你只需在入口页面

3.8K20

Chrome 键盘快捷键 转

打开书签管理器 Ctrl + Shift + o 在新标签页中打开“历史记录”页 Ctrl + h 在新标签页中打开“下载内容”页 Ctrl + j 打开 Chrome 任务管理器 Shift + Esc 焦点放置在...Chrome 工具栏中的第一项 Shift + Alt + t 焦点移到未聚焦于的对话框(如果显示)中 F6 打开查找栏搜索当前网页 Ctrl + f 或 F3 跳转到与查找栏中搜索字词相匹配的下一条内容...F11 放大网页的所有内容 Ctrl 和 + 缩小网页的所有内容 Ctrl 和 - 网页的所有内容恢复到默认大小 Ctrl + 0 向下滚动网页,一次一个屏幕 空格键或 PgDn 向上滚动网页...,一次一个屏幕 Shift + 空格键或 PgUp 转到网页顶部 首页 转到网页底部 末尾 在网页上水平滚动 按住 Shift 键并滚动鼠标滚轮 光标移到文本字段中的上一个字词前面 Ctrl + 向左箭头键...光标移到文本字段中的上一个字词后面 Ctrl + 向右箭头键 删除文本字段中的上一个字词 Ctrl + Backspace 焦点移到通知 Alt + n 在通知中允许 Alt + Shift +

1.4K20
领券