重新认识HTML系列002——html全局属性讲解之accesskey

来源:互联网 发布:学简谱的软件 编辑:程序博客网 时间:2024/05/20 04:31

html全局属性讲解之——accesskey

查看文档

accesskey这个属性只有一个作用:提供对页面元素的快捷访问

理论上,由于它是全局属性,所以所有元素都可以设置这个属性,但是,由于很多元素不具有可访问性,所以实际上,只有以下可激活元素设置了该属性才能达到快捷访问的效果:aareabuttoninputlabeltextarea

至于accesskey是如何起作用的,我们来做实验:

html-accessksy.html

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>HTML-accesskey</title></head><body><FORM action="http://www.baidu.com" method="post">    <h3>LABAL</h3>    <P>        <LABEL for="fuser" accesskey="u">            User Name        </LABEL>        <INPUT type="text" name="user" id="fuser">    </P>    <P>        <LABEL for="fmotion" accesskey="M">            Motion        </LABEL>        <INPUT type="text" name="user" id="fmotion">    </P>    <h3>A</h3>    <P>        <A href="http://www.baidu.com" target="_blank" accesskey="o">去百度</A>    </P>    <h3>textarea</h3>    <p>        <textarea name="textarea" id="textarea" accesskey="i" cols="30" rows="10"></textarea>    </p>    <h3>Input</h3>    <p>        <input type="text" id="input01" placeholder="input01" accesskey="q">    </p>    <!--input02实际上法无法通过accesskey获得焦点,因为其快捷键与浏览器自身快捷键冲突-->    <p>        <input type="text" id="bbb" placeholder="input02" accesskey="f">    </p>    <h3>area</h3>    <img src="001.jpg" border="0" usemap="#planetmap" alt="Planets" />    <map name="planetmap" id="planetmap">        <area shape="circle" coords="180,139,14" href ="1.html" alt="Venus" accesskey="1" />        <area shape="circle" coords="129,161,10" href ="2.html" alt="Mercury" accesskey="2" />        <area shape="rect" coords="0,0,110,260" href ="3.html" alt="Sun" accesskey="3"/>    </map>    <h3>button</h3>    <p>        <button type="reset" accesskey="r">重置</button>    </p></FORM></body></html>

通过这样一个,我们将上面所列可以使用accesskey访问的元素都集中于一个页面内,并且为每个元素都设置了accesskey属性。

那么,accesskey 是如何起作用的呢?

实际上,比如某个元素设置了accesskey属性值为b,那么当我们在windows 平台下chrome 浏览器的组合键Alt+b时,该元素便会被激活。

注意上句中的斜体字,没错,触发该属性的组合功能键与平台相关,不同操作系统不同浏览器所使用的组合功能键都不一样,如下表:

mark

表中的a key,就代表元素accesskey的值,例如上例中的b

好,现在我们在windows平台的google chrome浏览器中打开我们的实验页面,并依次按下对应的accesskey组合键,结果如下:

  • 当按下Alt+u时,idfuserinput获得了焦点
  • 当按下Alt+m时,idfmotioninput获得了焦点
  • 当按下Alt+o时,在新标签页打开了百度页面
  • 当按下Alt+i时,textarea输入框获得了焦点
  • 当按下Alt+q时,idinput01input获得了焦点
  • 当按下Alt+f时,弹出了浏览器的功能菜单 //!请注意这里
  • 当按下Alt+1时,跳转到了1.html
  • 当按下Alt+2时,跳转到了2.html
  • 当按下Alt+3时,跳转到了3.html
  • 当按下Alt+r时,将所有输入框中的值重置为空

通过以上结果,我们可知以下几点:

  • 1.accesskey属性的值为一个按键值,并且不区分大小写(由label部分两个accesskey的值一个大写,一个为小写,但都可以获得焦点可知)
  • 2.当设置的快捷组合键与浏览器自身快捷键有冲突时,accesskey属性不起作用。(如上例Alt+f
  • 3.当输入类元素(labelinputtextarea)设置了accesskey时,按下其accesskey组合键将使其获得焦点
  • 4.当链接类元素(aarea)设置了accesskey时,按下其accesskey组合键将直接跳转到对应的链接
  • 5.当按钮来元素(button)设置了accesskey时,按下其accesskey组合键相当于对其进行了click操作。

总结

HTML全局属性accesskey,虽然可以提供对元素便捷的快速访问功能,但其建设成本有点高,第一是可设置的键值数量有限,第二是当设置了该属性来提供快速访问时,需要将对应的组合按键在显眼的地方提示页面消费者,而由于组合功能键的平台差异性,意味着在进行提示时需要判断平台,代价稍大。

所以该属性应该尽量用在需要用户频繁在鼠标与键盘之间进行切换的表单页面和图像热点区域比较多的页面。

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 我在淘宝上买了货不发货咋怎么办 在快递公司寄的东西丢了我该怎么办 不小心给了快递员子一个差评怎么办 不小心用发霉了的杯子喝了水怎么办 唐三复活了小舞失去的魂环怎么办了 我该怎么办?身陷动漫城输了很多钱 庄家开2球大小球踢成2球怎么办 去哪儿网订机票时邮箱写错了怎么办 在南航航班上把手机丢飞机上怎么办 买了品牌鞋穿了一周就破了怎么办 狗让狠狠的打了一顿不理人了怎么办 调好米粉宝宝吃的时候就凉了怎么办 情人间闹分手删了微信后悔了怎么办 8个月宝宝不坐椅子一直要抱怎么办 2个月婴儿3天没有拉大便了怎么办 8个月的宝宝不吃米糊和稀饭怎么办 2岁零5个月的宝宝不说话怎么办 两岁宝宝不拔掉老是拉在裤上怎么办 一岁的宝宝吞了一颗五子棋该怎么办 别人欠我钱还把我拉黑我该怎么办 欠我钱的人耍赖不还我该怎么办 交易猫买的炉石传说号被找回怎么办 淘宝上卖水果过季了不想下架怎么办 两岁宝宝被蚊子咬了挠破流水怎么办 我打了人一拳他就躺地下了怎么办 在微信上被认识的人骗了钱该怎么办 微信上面被不认识的人骗了钱怎么办 柜体和订做的柜门颜色对不上怎么办 拉鞭炮的车压了我的电车不陪怎么办 脚爱出汗穿高跟凉鞋总往前滑怎么办 视频的格式是VⅠD打开很慢怎么办 汕头普法学法我点了考试没考怎么办 德云的生活攻略第三天卡关了怎么办 我的世界房子被参观的人烧了怎么办 新买的手表返厂维修弄划伤了怎么办 糖猫手表丢了别人捡了换了卡怎么办 我妈总怀疑我爸偷她东西怎么办啊 在百度上买的演出票不配送了怎么办 北交大预报名信息填错了怎么办保研 我租了个店面房子但是写了拆怎么办 电话换了微信账号密码都忘了怎么办