使用 jQuery 画布元素显示 Hiddin Div

displaying hiddin div with jquery canvas elements

本文关键字:显示 Hiddin Div 元素 jQuery 布元素 使用      更新时间:2023-09-26

我有HTML画布,上面画了圆圈。 我能够在每个圆圈上获得一个点击事件以显示警报,但我希望每个圆圈在单击时都显示一个隐藏的div。我尝试了我能想到的一切,但它不起作用。 请帮忙!

.HTML:

<div id="1" class="toggle" style="display:none"></div>
<div id="2" class="toggle" style="display:none"></div>
<div id="3" class="toggle" style="display:none"></div>
<div id="4" class="toggle" style="display:none"></div>

JS:(片段)

    var drawCircle = function (context, x, y, fillcolor, radius, linewidth, strokestyle, fontcolor,    textalign, fonttype, filltext, div, circles) {
    draw(context, x, y, fillcolor, radius, linewidth, strokestyle, fontcolor, textalign, fonttype, filltext);
    var circle = new Circle(x, y, radius);
    circles.push(circle);  
};
drawCircle(context, 300, canvas.height / 2, "green", 40, 5, "#003300", "white", "center", "bold 32px Arial", "1", "#1", circles);
drawCircle(context, 600, canvas.height / 3, "blue", 50, 5, "#003300", "white", "center", "bold 32px Arial", "2", "#2", circles);
$('#mapCanvas').click(function (e) {
    var clickedX = e.pageX - this.offsetLeft;
    var clickedY = e.pageY - this.offsetTop;
    for (var i = 0; i < circles.length; i++) {
        if (clickedX < circles[i].right && clickedX > circles[i].left && clickedY > circles[i].top && clickedY < circles[i].bottom) {
            /*alert ('clicked number ' + (i + 1));*/
            $(this).attr("div").show;
        }
    }
});

提前感谢!

如果"i"是点击的圆圈数,从 0 开始,

这应该有效。

$('#'+(i+1)).show();