【发布时间】:2013-10-09 13:48:40
【问题描述】:
我有一张带滚动条的背景图片(城市图片),在该图片上我放置了一些小图片(就像城市图片上的炸弹图片一样)。我有画布宽度和高度取决于这些变量我将炸弹图像放在城市图像上。当我将炸弹图像放置在 430*300 设备中的 can.width/2 和 can.height/2 时,图像将位于中心,但是当我尝试在更大屏幕的移动设备上进行测试时,炸弹图像的位置正在改变。我需要将炸弹图像放置在所有设备的相同位置。当我放大时,位置也在变化。任何人都请帮我解决这个问题。
这是我的代码
function smallBombImg(){
document.getElementById('carImg1').style.top = can.width/2 +"px";
document.getElementById('carImg1').style.left = can.height/2 +"px";
//document.getElementById('carImg1').style.background-attachment = "fixed";
document.getElementById('carImg1').style.display = "block";
document.getElementById('carImg1').src = 'img/bomb1.png';
}
HTML代码在这里
<body>
<div id="container">
<canvas id="can"></canvas>
</div>
<div id="btn">
<input type="image" id="zoomIn" src="img/up.png" onclick="zoomIn()" />
<input type="image" id="zoomOut" src="img/down.png"
onclick="zoomOut()" />
</div>
<div id="score">
<p id="scoreCount">
<b></b>
</p>
</div>
<div>
<img alt="simple1" id="carImg1" style="position: absolute; display: none;" />
</div>
</body>
【问题讨论】:
-
您需要从窗口对象获取屏幕测量值并将其考虑在内。您可以在窗口调整大小事件上设置一个事件侦听器(这对于 jQuery 来说是微不足道的,对 vanilla javascript 不太确定)并在屏幕缩放/调整大小时重新定位您的图像。
-
@francisco.preller 感谢您的回复.. 听起来不错,但我是 Jquery 和 JS 的初学者。我不知道该怎么做?可以举个例子吗?
-
@user2092317 我是动态做的,我不想明确地放在中心、左边、右边等等。
-
希望答案有帮助,不能久留,抱歉...
标签: javascript css canvas cordova html5-canvas