Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >不使用javascript的自定义下拉菜单中的键盘导航

不使用javascript的自定义下拉菜单中的键盘导航
EN

Stack Overflow用户
提问于 2022-11-29 23:21:59
回答 1查看 33关注 0票数 0

我有一个角度应用程序,其中有一个组件,它的div样式作为按钮,并点击它打开或关闭另一个div列表。

我需要让这个应用程序可以访问。我可以用角度(keyup.enter)事件来处理enter事件,当div列表打开时,我想将焦点移到列表中的第一项。当前,当列表打开时,我需要按选项卡来移动焦点。

是否有任何方法自动移动焦点使用ARIA-角色。我不想编写javascript来处理键向下/向上和焦点转移的代码。

另外,是否可以在windows和mac机器事件中使用角(keyup.enter),而不是用angualar类型记录和匹配键代码编写下键处理程序。

这是供参考的虚拟代码。

代码语言:javascript
运行
AI代码解释
复制
<div>
<div role="button" tabindex="0">
</div>

<div *ngIf="showList" role="list">
<div role="listitem" tabindex="0">
</div>
<div role="listitem" tabindex="0">
</div>
</div>
</div>

尝试使用aria角色菜单、菜单项,但无法移动焦点,也无法使用列表中的箭头键导航。

EN

回答 1

Stack Overflow用户

发布于 2022-11-30 00:49:57

对不起,但是如果您想要自定义,您需要一直走下去,自己实现键盘接口。

ARIA角色不实现交互,它们只交流交互的本质,以管理用户的期望,或者提供获取元素的快捷方式。

可能有一些库可以帮助您应用默认模式,如ARIA创作实践指南(APG)中所述。

如果您检查仅选择APG上的组合框示例,您将注意到您还需要更多的ARIA属性来符合下拉列表中的标准:

  • aria-expanded用于在按钮上公开列表当前是否展开
  • aria-haspopup=listbox公开按钮打开列表
  • 当然是可访问的名称(aria-label或真实文本内容)
  • 实际上是role=combobox而不是纽扣
  • role=option而不是listitem
  • 活动选项上的aria-selected

在可能的时候使用本机组件通常是很好的建议。他们被优化为该平台,快速,高度可访问,并需要较少的资源。

您可以应用一些样式和技巧,比如隐藏初始的、无焦点的输入。accent-color还允许在现代浏览器中使用一些基本样式。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74624131

复制
相关文章
java短信接口-单条短信接口对接
安全接口的数据传输经过加密、压缩,能够保障数据传输安全,如果有安全性要求,建议选用安全接口;
用户3803986
2019/01/07
14.8K0
UITextView字数限制
经常做,经常忘,记下来,以后好直接拷贝。 开始使用如下方法做限制 - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text { if ([text isEqualToString:@""] && range.length > 0) { //删除字符肯定是安全的 return YES; }
王大锤
2018/07/04
2.8K0
UITextView字数限制
经常做,经常忘,记下来,以后好直接拷贝。 开始使用如下方法做限制 - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text { if ([text isEqualToString:@""] && range.length > 0) { //删除字符肯定是安全的 return YES; }
王大锤
2018/05/17
2.5K0
Discourse 主题字数限制
你可以在 Discourse 的后台设置中搜索 min topic title length 关键字。
HoneyMoose
2020/05/20
1.2K0
Discourse 主题字数限制
CSS实现限制显示的字数,超出显示"..."
  在实际项目中,我们常常需要对某些页面的某些特定区域显示指定数量的内容,超出的内容显示"..."来进行美化页面,那么应该怎么做呢?今天就让我们来看看如何达到这一效果。
阿豪聊干货
2018/08/09
2.3K0
CSS实现限制显示的字数,超出显示"..."
iOS textView 的 placeholder、字数限制、行数限制最优雅的解决方式
更新: 已新增Swift版本! 更新 :约束适配 更新 :新增占位符颜色,字体设置 2017-12-5 如上图。简洁、常用。之前我接触过很多以封装类实现这个功能的三方,用起来需要创建别人的三方等等,总之不是那么舒服,今天自己特意为此用runtime写了一个分类。来实现这两个功能(可分开实现)。 用法:导入分类头文件! OC // textView.font = [UIFont systemFontOfSize:17]; // textView.text = @"请�写在自定义属性前面,如果
Raindew
2018/06/14
3.4K0
antd Vue的Input和TextArea组件输入字数限制
Ant Design for Vue的 Input 和 Textarea 组件有一个属性 maxlength ,可以限制文本输入长度。
德顺
2020/01/15
15.4K0
iOS 解决汉字联想输入,导致字数限制失效的问题
字数限制的问题点在于汉语可以无限汉语联想词汇,导致字数限制对于汉字输入就失去的作用。我们的做法是监听键盘联想出来的汉子,将其统计: 1 在viewDidLoad里面监听文本变化的通知 - (void)viewDidLoad { [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textViewEditChanged:) name:UITextFieldTextDidChangeNotificati
王大锤
2018/05/17
2.4K0
jQuery实时统计输入框字数及限制的方法
下面分享一个 jQuery 实时统计输入框输入字数及限制输入字数的方法,代码如下:
德顺
2019/11/12
1.7K0
阿里短信单发,批量发送_如何用阿里小号发短信
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/15
2K0
nginx限制IP恶意调用短信接口处理方法
1、过滤日志访问API接口的IP,统计每10分钟调用超过100次的IP,直接丢进nginx的访问黑名单
lyb-geek
2018/07/26
3.5K0
DedeCMS织梦上下篇调用标题限制字数解决撑开页面问题
这几天老蒋在忙着几个客户企业网站的主题修改,在调试DedeCMS的过程中有发现内容页面中上下篇调用的是前后文章的标题。但是由于位置的局限调用的前后文章的标题如果字数太多的话,会导致错位。有时候在电脑端没有什么问题,但是如果小屏幕或者是手机端会有不好。
老蒋
2021/12/27
2.1K0
js限制video拉动进度条
function notdrag() { var video = document.getElementById("myvideo"); var last = 0; video.ontimeupdate = function() { var current = video.currentTime; if (current - last > 2) { video.currentTime = last;
明知山
2020/09/03
7.1K0
AR短信应用《Skrite》新增传送功能,一条短信即可环游世界
“我想要带你去浪漫的土耳其,然后一起去东京和巴黎。其实我特别喜欢迈阿密,和有黑人的洛杉矶。”走走走,我们组团一起去啊!没时间?没有钱?哎,在这两座大山的重压下,多少人不敢奢谈梦想与情怀。但好在,我们有
VRPinea
2018/05/18
7710
JavaScript截取字符串限制显示字数加省略号摘要
虽然 CSS 可以设置超出部分隐藏,但是出于用户体验考虑,还是截取字符串比较顺眼。
德顺
2019/11/13
3.1K0
JavaScript截取字符串限制显示字数加省略号摘要
[android] 插入一条记录到系统短信应用里
获取ContentResolver对象,通过getContentResolver()方法
唯一Chat
2019/09/10
1.6K0
mysql单条sql批量更新封装
要成就大事业,就要趁青年时代——歌德 之前写了:mysql单条sql批量新增封装 现在写个批量更新的,源码地址 目前还不支持乐观锁,主要代码如下: package io.github.vampireachao.stream.plugin.mybatisplus.engine.methods; import com.baomidou.mybatisplus.core.injector.AbstractMethod; import com.baomidou.mybatisplus.core.metad
阿超
2022/09/28
1.6K0
mysql单条sql批量更新封装
mysql单条sql批量新增封装
源码地址:https://gitee.com/VampireAchao/stream-query
阿超
2022/08/21
1.3K0
mysql单条sql批量新增封装
点击加载更多

相似问题

国内短信正文的字数限制是多少?

35.2K

短信通知的变量限制多少个字数?

3478

短信包,个人可以群发短信吗?短信内容有字数限制?一次群发电话号有数量限制吗?

1488

指定模板ID单发短信?

41.3K

短信最少需要买多少条?

2381
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档