【发布时间】:2018-06-01 13:44:13
【问题描述】:
我有这个:
<style>
#pic_wrapper{
display: block;
position: relative;
padding: 0;
}
#selected_picture img {
width: 100%;
height: auto;
}
.pin {
display: none;
position: absolute;
height: 50px;
width: 50px;
padding: 0;
margin: 0;
}
</style>
<div id="pic_wrapper">
<div id="selected_picture">
<img src="map.png" />
</div>
</div>
并将标记附加到图像:
<script type="text/javascript" charset="UTF-8">
$(function(){
$('#selected_picture').on('click', function(e){
offset = $('#selected_picture').offset();
x = e.pageX - offset.left - 25;
y = e.pageY - offset.top - 25;
var pin = $('<div class="pin"><img class="pin-img" src="pin.png" /></div>');
pin.uniqueId();
$('#pic_wrapper').append(pin);
pin.css('left', x).css('top', y).show();
我需要将#selected_picture 连同所有引脚一起缩放,以使它们保持在相同的相对位置。
我在 div 中找到了这个文本示例:https://codepen.io/chriscoyier/pen/VvRoWy
但我可以弄清楚如何将这种方法应用于我的可调整大小的图片,上面有绝对定位的图钉。
感谢您的帮助。
【问题讨论】:
-
用 % 值代替引脚。
-
你的意思是'e.pageX - offset.left - 25' 应该是屏幕宽度的百分比吗?
-
并且引脚是'位置:绝对' - 它们不会随着调整大小而移动
-
没关系,对
top和left位置使用%值。 -
另请注意,您不会在任何时候将
pin元素添加到 DOM 中
标签: jquery scale image-resizing