javascript - 使用 jquery 添加和删除 Canvas 类

标签 javascript jquery html css canvas

我浏览了很多链接来找到我的问题的答案,但是找不到任何链接,所以决定问一下。

我正在使用 canvas html 元素来显示事件幻灯片。单击下一个按钮时,事件 Canvas 元素边框颜色应变为正常,下一个 Canvas 元素边框颜色应更改以标识事件。但它不起作用。

这是HTML

<div class="slider-nav">
    <a href="#" class="arrow-prev"><img src="http://s3.amazonaws.com/codecademy-content/courses/ltp2/img/flipboard/arrow-prev.png" /></a>
    <ul class="slider-dots">
        <li><canvas class="dot active-dot" width="50" height="10"></canvas></li>
        <li><canvas class="dot" width="50" height="10"></canvas></li>
        <li><canvas class="dot" width="50" height="10"></canvas></li>
        <li><canvas class="dot" width="50" height="10"></canvas></li>
    </ul>
    <a href="#" class="arrow-next"><img src="http://s3.amazonaws.com/codecademy-content/courses/ltp2/img/flipboard/arrow-next.png" /></a>
</div>

这是CSS

canvas {
    border:2px solid deepskyblue;
    border-radius: 50px;
}

canvas.active-dot {
    border:2px solid green;
    border-radius: 50px;
}

这是脚本

var main = function() {
    $('.arrow-next').click(function() {
        /*var canvas = document.getElementsByClassName('dot');
        var context = canvas.getContext('2d');
        context.fillStyle = '#8ED6FF';*/
        var currentDot = $('.active-dot');
        var nextDot = currentDot.next();

        if(nextDot.length === 0) {
            nextDot = $('.dot').first();
        }
        $('active-dot').removeClass('active-dot');
        /*currentDot.removeClass('active-dot');
        nextDot.addClass('active-dot');*/
        $(this).next().addClass('active-dot');
    });

    $('.arrow-prev').click(function() {

        var currentDot = $('.active-dot');
        var prevDot = currentDot.prev();

        if(prevDot.length === 0) {
            prevDot = $('.dot').last();
        }
        currentDot.removeClass('active-dot');
        prevDot.addClass('active-dot');
    });    
};

$(document).ready(main);

最佳答案

li 中有 canvas 元素,因此您需要编写 currentDot.parent().next().find('.dot'); 而不是 currentDot.next() .prev()

也是如此

关于javascript - 使用 jquery 添加和删除 Canvas 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29774572/

相关文章:

javascript - 动态添加的 tspan 在 chrome 中相对于彼此无法正确显示

javascript - 闭包变量对内存的影响

javascript - 如何点击selenium中的自定义属性?

php - 如何在 jQuery 中用 Font Awesome 替换删除单词

javascript - 克隆 JavaScript 对象。又是:(

javascript - 使用 JQuery 和 regexp 输入掩码

html - CSS 将文本放置在网格 block 中

javascript - 使 AngularJs 可被搜索引擎抓取

html - 如何使用特定设计格式化表格标题?

javascript - 同一空间不同方 block 淡入/淡出的正确方法