tabindex解决DIV获得焦点的问题(转)

首先tabindex是Tab键焦点跳跃的顺序。

<div class="title">关于元素获取焦点:</div>

<div class="title">1,隐藏元素无法获取焦点</div>
<p>下面有个隐藏的Input:</p>
<p style="display: none;"><input class="input" id="textbox" name="textbox" value="Hi,CssRain!!!"></p>
<input οnclick="process0();" value="无法使隐藏元素获取焦点" type="button">
<p>解决方法:先把元素显示,在获取焦点。</p>

<div class="title">2,对于div等特殊元素获取焦点</div>
<div id="a">我是DIV元素,我不带tabindex="-1"。</div>
<input οnclick="process1();" value="Div不能获取焦点" type="button">
<div id="b" tabindex="-1">我是DIV元素,我带tabindex="-1",点击下面按钮试试效果。</div>
<input οnclick="process2();" value="使Div获取焦点" type="button">
<script>
function process0(){
    var textbox = document.getElementById("textbox");
    textbox.onfocus = function(){alert('获取焦点');}
    textbox.focus();
}
function process1(){
    var a = document.getElementById("a");
    a.onfocus = function(){alert('获取焦点');}
    a.focus();
}
function process2(){
    var b = document.getElementById("b");
    b.onfocus = function(){alert('获取焦点');}
    b.focus();
    //非常推荐使用 tabindex = -1,基本无副作用!
}
 </script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值