我有一个画布。在这个画布中,我有一个图像覆盖了整个画布(这是一个平板电脑的图像)。在这个图像中,我有3个小图像,我有3个按钮。HTML5帆布隐藏并显示特定图像
我该怎么做,当我点击第一个按钮时,这会让我的第一张图片隐藏或可见?并为其他按钮做同样的事情。
更新
这是jsfiddle。我创建了3个按钮:
- Twitter按钮显示/隐藏Twitter图标。
- Facebook按钮用Google Chrome icon切换。
Linkedin按钮显示/隐藏linkedin图标。
var canvas = $('#canvas')[0]; var ctx = canvas.getContext("2d"); var tablet = loadImage('http://pngimg.com/upload/tablet_PNG8592.png', main); var twitter = loadImage('http://vignette4.wikia.nocookie.net/callofduty/images/f/f3/Twitter_icon.png/revision/latest?cb=20120120', main); var facebook = loadImage('http://icons.iconarchive.com/icons/yootheme/social-bookmark/512/social-facebook-box-blue-icon.png', main); var linkedin = loadImage('https://upload.wikimedia.org/wikipedia/commons/thumb/f/f9/Linkedin_Shiny_Icon.svg/1000px-Linkedin_Shiny_Icon.svg.png', main); var imagesLoaded = 0; function main() { imagesLoaded += 1; if(imagesLoaded == 4) { // Tablet pic ctx.drawImage(tablet, 0, 0, 850, 450); // Twitter Pic ctx.drawImage(twitter, 150, 120, 150, 150); ctx.fillStyle = "white"; ctx.font = "20px Arial"; ctx.fillText("Twitter", 200, 300); // Facebook Pic ctx.drawImage(facebook, 335, 120, 150, 150); ctx.fillStyle = "white"; ctx.font = "20px Arial"; ctx.fillText("Facebook", 365, 300); // Linkedin Pic ctx.drawImage(linkedin, 540, 120, 150, 150); ctx.fillStyle = "white"; ctx.font = "20px Arial"; ctx.fillText("Linkedin", 580, 300); } } function loadImage(src, onload) { var img = new Image(); img.onload = onload; img.src = src; return img; }
UPDATE 2
我又jsfiddle here。现在我们可以点击facebook按钮和这张与linkedin图片一起使用的护目镜。但是我对clearRect有一个问题。在clearRect之后,我们可以看到画布背景颜色。我无法用圆角清除边界。
我该怎么做?
这可能是个好问题。我建议你添加你的代码,以便我们知道我们在看什么。 – Twisty
是的,明天生病更新我的问题 – John