问题描述
使用下面的代码获取无法读取javascript中未定义错误的属性'style',实际上,当我在服务器上更新它时,它显示上述错误,一切在本地都能正常工作。
var currentTab = 0;
showTab(currentTab);
function showTab(n) {
var x = document.getElementsByClassName("tab");
x[n].style.display = "block"; // on this line I am getting error
if (n == 0) {
document.getElementById("prevBtn").style.display = "none";
} else {
document.getElementById("prevBtn").style.display = "inline";
}
if (n == (x.length - 1)) {
document.getElementById("nextBtn").innerHTML = "Submit";
} else {
document.getElementById("nextBtn").innerHTML = "Next";
}
fixStepIndicator(n)
}
解决方法
确保将x [n]元素添加到dom后执行的代码。 在DOMContentLoaded或jQuery(ready)事件中执行代码。您会在网上找到很多示例。