简单滑块的Javascript函数不执行onclick

时间:2015-07-23 15:41:54

标签: javascript function slide

您好,感谢您的查询。 我已经决定通过反复试验来学习Javascript并使用Google搜索我需要的东西。到目前为止一切都那么好,但是当我尝试一些有点棘手的东西时,一个滑块,事情变得艰难。

我对Javascript中的语法以及如何在函数中编写表达式方面确实不太了解,但我正在尝试。

所以这里我们在div中有一个简单的4个图像,带有2个箭头滑块。当我们点击箭头我们希望计数器减少1时,我们要确保它不等于0,如果它确实我们将它改为4,当这样做时我们给出相应的图像(img [counter])az例如,索引为50。但它不起作用。出于某种原因。

这是整个事情的小提琴,希望我不要为此烦恼你们。

https://jsfiddle.net/wu2Lysrv/3/

function slideEngine() {
    var img1 = document.querySelector("#img1");
    var img2 = document.querySelector("#img2");
    var img3 = document.querySelector("#img3");
    var img4 = document.querySelector("#img4");
    var counter = 1;

    function slideL() {
        counter--;
        if (counter == 0) {
            counter = 4;
        }
        img[counter].setAttribute("z-index", "50");
    }
}

我会理解,如果有人成为仇恨,因为我打赌这段代码是非常非常错误的。我仍然想学习如何正确地做到这一点。

1 个答案:

答案 0 :(得分:1)

slideL功能位于slideEngine内,因此您的HTML无法直接访问它。

一个可能的解决方法是简单地删除包装功能,因为它似乎没有在任何地方使用。但是,代码还有其他问题会阻止它工作。我试图在下面解决一些问题。

var img1 = document.querySelector("#img1");
var img2 = document.querySelector("#img2");
var img3 = document.querySelector("#img3");
var img4 = document.querySelector("#img4");
var counter = 1;

function slideL() {
    counter--;
    if (counter == 0) {
        counter = 4;
    }
    window['img'+counter].style.zIndex = 50;
}

我没有试过这个,但试试看。