html5操作画布中的元素
我想知道如何将图像加载到HTML5画布中。具体地说,我想要一个脚本,在鼠标移到画布上时,在原始图像淡出的情况下,在画布上交换一个图像。我是HTML5新手,有以下代码:html5操作画布中的元素,html,Html,我想知道如何将图像加载到HTML5画布中。具体地说,我想要一个脚本,在鼠标移到画布上时,在原始图像淡出的情况下,在画布上交换一个图像。我是HTML5新手,有以下代码: <canvas id="myCanvas" width="500" height="500" /> <script type="text/javascript"> function drawbackground() { char.fillStyle="blue"; c
<canvas id="myCanvas" width="500" height="500" />
<script type="text/javascript">
function drawbackground() {
char.fillStyle="blue";
cxt.fillRect(0,0,500,500);
}
var charx=0;
var chary=0;
var c=document.getElementById("myCanvas");
var cxt=c.getContext("2d");
var char=c.getContext("2d");
drawbackground();
char.fillStyle="black";
var imgObj = new Image();
imgObj.src='map1.png';
imgObj.onload = function () {
// Draw the image on the canvas
char.drawImage(imgObj, 10, 10);
}
</script>
这是正确的方向吗?您可以在没有HTML5画布的情况下实现这一点。要在鼠标上交换图像,最容易使用名为jQuery的JavaScript框架,请在此处免费获取它: 使用jQuery,您只需执行以下操作: 首先,创建一个图像标记
<img src="image1.png" id="myimage" />
上面的示例将更改鼠标悬停时的图像。要实现淡入淡出效果,您需要做更多的工作:您可以在这里了解有关jQuery效果的更多信息:
我将为效果创建两个图像,并将css属性设置为“隐藏图像2”,将每个图像放置在另一个图像上
<div id="imageHolder">
<img src="image1.png" id="myimage1" />
<img src="image2.png" id="myimage2" style="display:none" />
</div>
有很多方法可以实现这一点,上面的代码没有经过测试,但应该为您快速创建所需效果提供基础
<div id="imageHolder">
<img src="image1.png" id="myimage1" />
<img src="image2.png" id="myimage2" style="display:none" />
</div>
$("#imageHolder").mouseover(function() {
$("#image1").fadeOut();
$("#image2").show();
});
$("#imageHolder").mouseout(function() {
$("#image1").fadeIn();
$("#image2").hide();
});