原始需求:父div上面有tabindex="0",点击子div,子div获取焦点,这个时候,希望父div也获取焦点。
这个在Chrome,FF浏览器上均表现正常,唯独IE环境不好用,困扰了许久,花费大约一天时间,尝试过各种办法,比如JS脚本,focus()方法,阻止冒泡事件,增加div蒙层,嵌套层级等等,都不能解决,也不是最理想的办法。最后还是stackoverflow上搞定问题。
Demo在这里链接。
样例代码如下:
IE浏览器下的代码行为特别怪异,让人费解,不知道是不是bug,但感觉不像,总之你可以在你的浏览器环境试验下,唯独IE不管用。
解决的办法:
通过事件机制或者js脚本或引起许多问题,尝试使用默认表情比如"div","span"在IE环境下就会出现这个状况,但换成自定义的标签,比如自定义“foo”或者像"var"这样,IE就能够表象的很正常