[AngularJS] Accessible Button Events
Often buttons need to be handled by JavaScript, and if done improperly it can lead to accessibility issues. In this lesson you will improve a major news organization's global header with some basic HTML and JavaScript.
Normal you should use native 'button' to make a button instead of use other html element to make a button, then you can access the button thought the keyboard.
If you use a 'div', then what you should do to make it accessible to the user by keyborad, you should add 'role', 'tabindex' & 'aria-label' to it:
<button aria-label="Help">
<i class="icon icon-help"></i>
</button> <div class="button" role="button" tabindex="0" aria-label="Menu">
<i class="icon icon-menu"></i>
</div>
If you use AngularJS,and you want press 'Enter' to get the handle event, you should add 'ng-keydown' for it:
<button aria-label="Help" ng-click="doStuff()">
<i class="icon icon-help"></i>
</button> <div class="button" role="button" tabindex="0" aria-label="Menu" ng-click="doStuff()" ng-keydown="doStuff()">
<i class="icon icon-menu"></i>
</div>
[AngularJS] Accessible Button Events的更多相关文章
- Part 39 AngularJS route change events
In this video we will discuss1. Different events that are triggered when a route change occurs in an ...
- Angularjs学习笔记1_基本技巧
10.AngularJS ng-click <button ng-click="clickCounter = clickCounter + 1">Click Me! ...
- AngularJs MVC 详解
为什么在前端也需要MVC 1.代码规模越来越大,切分职责是大势所趋 2.为了复用 3.为了后期维护方便 MVC的目的是为了模块化和复用 前端实现MVC的困难 1.操作DOM必须等整个页面加载完 2.多 ...
- AngularJS的控制器示例
代码下载:https://files.cnblogs.com/files/xiandedanteng/angularjsCtrl.rar 代码: <!DOCTYPE HTML PUBLIC &q ...
- Best Practices for Speeding Up Your Web Site
The Exceptional Performance team has identified a number of best practices for making web pages fast ...
- [转载]Best Practices for Speeding Up Your Web Site
原文:http://developer.yahoo.com/performance/rules.html 提升网站加载速度的一些优化技巧,大部分在前端层面. 不知道是多久以前写的,看起来有些已经过时了 ...
- 札记:android手势识别,MotionEvent
摘要 本文是手势识别输入事件处理的完整学习记录.内容包括输入事件InputEvent响应方式,触摸事件MotionEvent的概念和使用,触摸事件的动作分类.多点触摸.根据案例和API分析了触摸手势T ...
- [蓝牙] 3、 剖析BLE心率检测工程
位于:<KEIL path> \ARM\Device\Nordic\nrf51822\Board\pca10001\s110\ble_app_hrs Heart Rate Example ...
- 如何将GridViewEX升级到UWP(Universal Windows Platform)平台
引言 上一篇文章中,我们主要讲解了如何在保证GridView控件的用户体验基础上,扩展GridView生成GridViewEx控件,增加动态添加新分组功能等,本文在上文的基础上,介绍如何在Window ...
随机推荐
- [原]Unity3D深入浅出 - 脚本开发基础(Scripts)
常用脚本事件: Update:每帧调用一次 Start:在第一次Update执行前调用 Awake:脚本实例在创建时调用 FixedUpdate:每个固定物理时间间隔调用一次 LateUpdate:每 ...
- Unity3d插件推荐
2D_Toolkit_1.51 动画开发插件包 FingerGestures 触摸插件 ORK_Okashi_RPG_Kit Unity3D角色扮演游戏开发工具包 uScript-Visual-Scr ...
- requirejs 小结
1,“生搬硬套”-----js依赖的写法,依赖关系如这里的嵌套关系: /** * 模块化加载,注意各个js文件的依赖关系(嵌套) */ require(["jquery"], fu ...
- UVa 808 (建坐标系、找规律) Bee Breeding
题意: 如图,按照图中的规律给这些格子编号.给出两个格子的编号,求从一个格子到另一个格子的最少步数.(一步只能穿过有有公共边的格子) 分析: 根据高中数学知识,选任意两个不共线的向量,就能表示平面上所 ...
- HDU 3533 Escape BFS搜索
题意:懒得说了 分析:开个no[100][100][1000]的bool类型的数组就行了,没啥可说的 #include <iostream> #include <cstdio> ...
- Nitrous挂VPN
- 【UR #12】实验室外的攻防战(BIT)
[题目链接] http://uoj.ac/problem/180 [题意] 给定两个1..n的排列AB,只有当ai<ai+1才能交换ai和ai+1,问是否能够将A转换为B. [思路] 令a[i] ...
- 【原创】alias与export
最近在看lualua相关的,其中k中有os.getenv('kroot'),看到~/.bashrc理由kroot但是为什么拿不到,后来发现写成了alias了,应该是export的. alias rer ...
- RHEL6.x 删除Oracle11g
1.停止数据库 $sqlplus /nolog SQL>conn /as sysdba SQL>shutdown immediate 2.停止Listener $lsnrctl stop ...
- 解决网站出错后 跳转 友好页面 的 asp .net 配置
<system.webServer> <httpErrors errorMode="DetailedLocalOnly"> <remove statu ...