在 Internet Explorer 中如果元素没有 tabIndex,它将 return 0 作为默认值
In Internet Explorer If element does not have tabIndex, it will return 0 as default value
我正在使用 javascript 获取此元素的 tabIndex 属性
<div role="radio" aria-checked="false" tabindex="-1">
<div id="if_empty" tabindex="-1" type="radio" value="Show only if empty"></div>
<label id="radioId" for="if_empty">Show only if empty</label>
</div>
它在除 Internet Explorer 之外的所有浏览器中都能完美运行。
const element = document.getElementById("radioId");
const tabIndex = element.tabIndex;
// tabIndex is -1 for Firefox/Chrome
// and it is equal 0 for Internet Explorer
如何在 Internet Explorer 中获取正确的 tabIndex?
对我有用的解决方案是使用 getAttribute('tabIndex')
获取 tabIndex
for (let i = 0; i < rootNode.childNodes.length; i++) {
const child = rootNode.childNodes[i];
if (child.nodeType === 1 && child.getAttribute('tabIndex') === 0) {
//find tabbable element
}
}
如果您不喜欢这个问题,请告诉我,我会删除它。
我正在使用 javascript 获取此元素的 tabIndex 属性
<div role="radio" aria-checked="false" tabindex="-1">
<div id="if_empty" tabindex="-1" type="radio" value="Show only if empty"></div>
<label id="radioId" for="if_empty">Show only if empty</label>
</div>
它在除 Internet Explorer 之外的所有浏览器中都能完美运行。
const element = document.getElementById("radioId");
const tabIndex = element.tabIndex;
// tabIndex is -1 for Firefox/Chrome
// and it is equal 0 for Internet Explorer
如何在 Internet Explorer 中获取正确的 tabIndex?
对我有用的解决方案是使用 getAttribute('tabIndex')
for (let i = 0; i < rootNode.childNodes.length; i++) {
const child = rootNode.childNodes[i];
if (child.nodeType === 1 && child.getAttribute('tabIndex') === 0) {
//find tabbable element
}
}
如果您不喜欢这个问题,请告诉我,我会删除它。