将图片作为链接

如何在画布中制作图像作为链接?我无法将 < a href > 标签放在 < image > 标签上,因为我不希望它首先显示,直到用户单击按钮。


我需要在javascript中插入任何代码行吗?


window.onload = function () {

    var endCan = document.getElementById("endCan");

    var end = endCan.getContext("2d");

    var img = document.getElementById("end");

    end.drawImage(img, 0, 0, img.width / 2, img.height / 2);

};

<img id="end" style="display: none;" src="img/WellDone_Rectangle.png"/>

<canvas id="endCan" class="wrapper" width="1000" height="600"></canvas>

$(".buttonNext6").click(function () {

    $("#endCan").fadeIn();

});


呼唤远方
浏览 167回答 2
2回答

慕工程0101907

您需要向画布添加一个单击事件处理程序,然后在单击它时检查坐标以查看它是否在绘制图像的位置被单击。这是一个示例,使用在画布上绘制的矩形...var endCan = document.getElementById("endCan");var endCtx = endCan.getContext("2d");endCtx.rect(10, 20, 150, 100);endCtx.fill();endCan.addEventListener("click", function(e) {&nbsp; &nbsp; if (e.clientX >= 10 && e.clientX <= 160 &&&nbsp; &nbsp; &nbsp; &nbsp; e.clientY >= 20 && e.clientY <= 120) {&nbsp; &nbsp; &nbsp; &nbsp; alert("clicked");&nbsp; &nbsp; }});<canvas id="endCan" class="wrapper" width="500" height="300"></canvas>

拉丁的传说

window.onload = function () {&nbsp; &nbsp; var endCan = document.getElementById("endCan");&nbsp; &nbsp; var end = endCan.getContext("2d");&nbsp; &nbsp; var img = document.getElementById("end");&nbsp; &nbsp; end.drawImage(img, 0, 0, img.width / 2, img.height / 2);};//$(".buttonNext6").click(function () {//&nbsp; &nbsp; $("#endCan").fadeIn();//});function canvasCallback() {&nbsp; &nbsp; console.log('clicked')}<img id="end" style="display: none;" src="https://picsum.photos/200/300"/><canvas onclick="canvasCallback()" id="endCan" class="wrapper" width="1000" height="600"></canvas>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript