我目前有一个地图,当点击图片时,它可以在上面放置一个矩形,它看起来像这样:
<script>
$(document).ready(function(){
$(document).on('click', 'img', function (ev) {
$(".marker").remove();
$("form#pointform").append(
$('<div class="marker"></div>').css({
position: 'absolute',
top: ev.pageY - 4 + 'px',
left: ev.pageX - 4 + 'px',
width: '5px',
height: '5px',
background: '#fff'
})
);
});
});
</script>我还有一个不同的函数,它可以确定地图上的坐标,并返回其中的百分比(因此图像的左上角为0.0,右下角为1)。现在我想在页面加载时显示地图上的矩形,以查看当前位置(例如0.6X坐标和0.84Y坐标,这些值已经存储,我只需要在该位置上有一个点)
图片在html中:
<form name="pointform" method="post" id="pointform">
<div id="pointer_div">
<img src="url/to/my/map.png" width="500" height="300" id="cross" style="position:relative;">
</div>
</form>我不太了解JQuery,所以我想知道如何在图像上的特定位置放置一个矩形?欢迎所有的帮助!
发布于 2016-07-21 20:39:57
如果您创建了一个接受x和y位置的setMarker函数,那么您可以在单击和页面加载时调用它。
$(document).ready(function(){
$(document).on('click', 'img', function (ev) {
$(".marker").remove();
setMarker(ev.pageX,ev.pageY);
});
setMarker($('#cross').width()*.6,$('#cross').height()*.84);
});
function setMarker(xPos,yPos){
$("form#pointform").append(
$('<div class="marker"></div>').css({
position: 'absolute',
top: yPos - 4 + 'px',
left: xPos - 4 + 'px',
width: '5px',
height: '5px',
background: '#fff'
})
);
}https://stackoverflow.com/questions/38504251
复制相似问题