Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript无法读取属性';类列表';未定义错误的定义_Javascript - Fatal编程技术网

JavaScript无法读取属性';类列表';未定义错误的定义

JavaScript无法读取属性';类列表';未定义错误的定义,javascript,Javascript,我在做一个个人项目,用纯javascript制作一个滑块。但是js代码不起作用。单击“下一步”按钮时,控制台显示一个错误,该错误为未捕获的TypeError:无法读取未定义的属性“classList”。与上一个按钮相同。我尽了我所能,但找不到答案= JS代码: var next1 = document.getElementById("next"); var prev1 = document.getElementById("prev"); var ulist = document.getEleme

我在做一个个人项目,用纯javascript制作一个滑块。但是js代码不起作用。单击“下一步”按钮时,控制台显示一个错误,该错误为未捕获的TypeError:无法读取未定义的属性“classList”。与上一个按钮相同。我尽了我所能,但找不到答案=

JS代码:

var next1 = document.getElementById("next");
var prev1 = document.getElementById("prev");
var ulist = document.getElementsByTagName("ul").lastChild;
var ulist1 = document.getElementsByTagName("ul").firstChild;
var slides = document.querySelectorAll("li");
var active = document.getElementsByClassName("active")[0];

for(var i=0; i<3; i++){
slides[i].style.display = 'none';
}

slides[0].classList.add("active");

document.getElementsByClassName("active")[0].style.display = "block";

function next() {
    active.classList.add("oldActive");
    active.classList.remove("active");
    if(Object.is(document.getElementsByClassName("oldActive")[0]) , ulist){
        slides[0].classList.add("active");
    }

    else{
        document.getElementsByClassName("oldActive")[0].nextElementSibling.classList.add("active");
    }
}

function prev() {
    document.getElementsByClassName("active")[0].classList.add("oldActive");
    document.getElementsByClassName("active")[0].classList.remove("active");
    if(Object.is(document.getElementsByClassName("oldActive")[0]) , ulist1){
        slides[2].classList.add("active");
    }
    else{
        document.getElementsByClassName("oldActive")[0].previousElementSibling.classList.add("active");
    }
}

next1.addEventListener('click' , function() {
    next();
});


prev1.addEventListener('click' , function() {
    prev();
});
var next1=document.getElementById(“next”);
var prev1=document.getElementById(“prev”);
var ulist=document.getElementsByTagName(“ul”).lastChild;
var ulist1=document.getElementsByTagName(“ul”).firstChild;
var slides=document.queryselectoral(“li”);
var active=document.getElementsByClassName(“active”)[0];

对于(var i=0;i当您定义
active
元素var时,没有元素具有
active
类-将
active
作为类添加到html中的第一个项中。

var next1=document.getElementById(“下一步”);
var next1 = document.getElementById("next");
var prev1 = document.getElementById("prev");
var ulist = document.getElementsByTagName("ul").lastChild;
var ulist1 = document.getElementsByTagName("ul").firstChild;
var slides = document.querySelectorAll("li");


for(var i=0; i<3; i++){
slides[i].style.display = 'none';
}

slides[0].classList.add("active");

document.getElementsByClassName("active")[0].style.display = "block";

function next() {
    var active = document.getElementsByClassName("active")[0];
    if(active) {
       active.classList.add("oldActive");
       active.classList.remove("active");
    }
    if(Object.is(document.getElementsByClassName("oldActive")[0]) , ulist){
        slides[0].classList.add("active");
    }

    else{
        document.getElementsByClassName("oldActive")[0].nextElementSibling.classList.add("active");
    }
}

function prev() {
    document.getElementsByClassName("active")[0].classList.add("oldActive");
    document.getElementsByClassName("active")[0].classList.remove("active");
    if(Object.is(document.getElementsByClassName("oldActive")[0]) , ulist1){
        slides[2].classList.add("active");
    }
    else{
        var siblingEl = document.getElementsByClassName("oldActive")[0].previousElementSibling;
        siblingEl && siblingEl.classList.add("active");
    }
}

next1.addEventListener('click' , function() {
    next();
});


prev1.addEventListener('click' , function() {
    prev();
});
var prev1=document.getElementById(“prev”); var ulist=document.getElementsByTagName(“ul”).lastChild; var ulist1=document.getElementsByTagName(“ul”).firstChild; var slides=document.queryselectoral(“li”);
对于(var i=0;iOn),该错误出现在哪一行?您能发布更完整的代码以便我们有一个可以使用的代码吗?您能与我们共享您的标记吗?main.js:36 Uncaught TypeError:无法在HtmleElement的prev(main.js:36)读取null属性“classList”。(main.js:46)在JS文件中,必须将变量设置为全局变量,以便在函数中读取。请尝试删除“var”。
var next1 = document.getElementById("next");
var prev1 = document.getElementById("prev");
var ulist = document.getElementsByTagName("ul").lastChild;
var ulist1 = document.getElementsByTagName("ul").firstChild;
var slides = document.querySelectorAll("li");


for(var i=0; i<3; i++){
slides[i].style.display = 'none';
}

slides[0].classList.add("active");

document.getElementsByClassName("active")[0].style.display = "block";

function next() {
    var active = document.getElementsByClassName("active")[0];
    if(active) {
       active.classList.add("oldActive");
       active.classList.remove("active");
    }
    if(Object.is(document.getElementsByClassName("oldActive")[0]) , ulist){
        slides[0].classList.add("active");
    }

    else{
        document.getElementsByClassName("oldActive")[0].nextElementSibling.classList.add("active");
    }
}

function prev() {
    document.getElementsByClassName("active")[0].classList.add("oldActive");
    document.getElementsByClassName("active")[0].classList.remove("active");
    if(Object.is(document.getElementsByClassName("oldActive")[0]) , ulist1){
        slides[2].classList.add("active");
    }
    else{
        var siblingEl = document.getElementsByClassName("oldActive")[0].previousElementSibling;
        siblingEl && siblingEl.classList.add("active");
    }
}

next1.addEventListener('click' , function() {
    next();
});


prev1.addEventListener('click' , function() {
    prev();
});