Javascript 如何单击并在该位置写入x/y位置?
我在页面上有一个图像。我希望能够点击整个图像,并在点击点输出每次点击的x/y位置(坐标)。我该怎么做 注意:我已经知道如何获得x/y坐标。我的问题集中在如何在这些精确的坐标处将x/y坐标写入屏幕上Javascript 如何单击并在该位置写入x/y位置?,javascript,jquery,Javascript,Jquery,我在页面上有一个图像。我希望能够点击整个图像,并在点击点输出每次点击的x/y位置(坐标)。我该怎么做 注意:我已经知道如何获得x/y坐标。我的问题集中在如何在这些精确的坐标处将x/y坐标写入屏幕上 我假设在点击图像时,我会动态地编写一个内联div,其中包含文本坐标。但我不知道如何实现这一点。谢谢 您可以将容器添加到图像中 window.onclick = function(e){ var x = e.clientX; var y = e.clientY; console.log(x,
我假设在点击图像时,我会动态地编写一个内联div,其中包含文本坐标。但我不知道如何实现这一点。谢谢 您可以将容器添加到图像中
window.onclick = function(e){
var x = e.clientX;
var y = e.clientY;
console.log(x, y);
};
<div class="image-container">
<img src="image.jpg" alt="my image">
</div>
$('.image-container img').click(function (e) {
var img = $(e.currentTarget);
//get the point relative to the container
//if you want it relative to the window, get pageX/pageY instead
var x = e.offsetX;
var y = e.offsetY;
var coords = $('<div class="coords"></div>');
coords.text(x + ', ' + y);
var container = img.parent();
coords.css({
left: x + 'px',
top: y + 'px'
});
container.append(coords);
});
然后将单击事件添加到图像中
<div class="image-container">
<img src="image.jpg" alt="my image">
</div>
$('.image-container img').click(function (e) {
var img = $(e.currentTarget);
//get the point relative to the container
//if you want it relative to the window, get pageX/pageY instead
var x = e.offsetX;
var y = e.offsetY;
var coords = $('<div class="coords"></div>');
coords.text(x + ', ' + y);
var container = img.parent();
coords.css({
left: x + 'px',
top: y + 'px'
});
container.append(coords);
});
$('.image container img')。单击(函数(e){
var img=$(如currentTarget);
//获取相对于容器的点
//如果希望它相对于窗口,请改为获取pageX/pageY
var x=e.offsetX;
变量y=e.offsetY;
var coords=$('');
coords.text(x+','+y);
var container=img.parent();
coords.css({
左:x+‘px’,
顶部:y+‘px’
});
container.append(coords);
});
下面是一个您可以将容器添加到图像中
<div class="image-container">
<img src="image.jpg" alt="my image">
</div>
$('.image-container img').click(function (e) {
var img = $(e.currentTarget);
//get the point relative to the container
//if you want it relative to the window, get pageX/pageY instead
var x = e.offsetX;
var y = e.offsetY;
var coords = $('<div class="coords"></div>');
coords.text(x + ', ' + y);
var container = img.parent();
coords.css({
left: x + 'px',
top: y + 'px'
});
container.append(coords);
});
然后将单击事件添加到图像中
<div class="image-container">
<img src="image.jpg" alt="my image">
</div>
$('.image-container img').click(function (e) {
var img = $(e.currentTarget);
//get the point relative to the container
//if you want it relative to the window, get pageX/pageY instead
var x = e.offsetX;
var y = e.offsetY;
var coords = $('<div class="coords"></div>');
coords.text(x + ', ' + y);
var container = img.parent();
coords.css({
left: x + 'px',
top: y + 'px'
});
container.append(coords);
});
$('.image container img')。单击(函数(e){
var img=$(如currentTarget);
//获取相对于容器的点
//如果希望它相对于窗口,请改为获取pageX/pageY
var x=e.offsetX;
变量y=e.offsetY;
var coords=$('');
coords.text(x+','+y);
var container=img.parent();
coords.css({
左:x+‘px’,
顶部:y+‘px’
});
container.append(coords);
});
这是一个这是一个工作片段。其思想是将单击事件绑定到
img
元素,然后单击创建一个动态span
标记,并将其top
和left
css属性分别设置为event.offsetY
和event.offsetX
。这将确保跨度正好位于发生单击的位置
$('img')。在('click',函数(e){
var span=“+e.offsetX+”,“+e.offsetY+”
$('body')。追加(span);
});代码>
这里是一个工作片段。其思想是将单击事件绑定到img
元素,然后单击创建一个动态span
标记,并将其top
和left
css属性分别设置为event.offsetY
和event.offsetX
。这将确保跨度正好位于发生单击的位置
$('img')。在('click',函数(e){
var span=“+e.offsetX+”,“+e.offsetY+”
$('body')。追加(span);
});代码>
使用MouseEvent
中的offsetX
和offsetY
查找图像中单击的坐标,并使用pageX
和pageY
获取在该位置定位
元素所需的坐标:
$("img").click(function(e) {
$("<span></span>")
.css({
position: "absolute",
left: e.pageX,
top: e.pageY
}).text("(" + e.offsetX + ", " + e.offsetY + ")")
.appendTo("body");
});
$(“img”)。单击(函数(e){
$("")
.css({
位置:“绝对”,
左:e.pageX,
顶部:e.pageY
}).text(“+e.offsetX+”、“+e.offsetY+”)
.附于(“主体”);
});
$(“img”)。单击(函数(e){
$("")
.css({
位置:“绝对”,
左:e.pageX,
顶部:e.pageY
}).text(“+e.offsetX+”、“+e.offsetY+”)
.附于(“主体”);
});代码>
使用MouseEvent
中的offsetX
和offsetY
查找图像中单击的坐标,并使用pageX
和pageY
获取在该位置定位
元素所需的坐标:
$("img").click(function(e) {
$("<span></span>")
.css({
position: "absolute",
left: e.pageX,
top: e.pageY
}).text("(" + e.offsetX + ", " + e.offsetY + ")")
.appendTo("body");
});
$(“img”)。单击(函数(e){
$("")
.css({
位置:“绝对”,
左:e.pageX,
顶部:e.pageY
}).text(“+e.offsetX+”、“+e.offsetY+”)
.附于(“主体”);
});
$(“img”)。单击(函数(e){
$("")
.css({
位置:“绝对”,
左:e.pageX,
顶部:e.pageY
}).text(“+e.offsetX+”、“+e.offsetY+”)
.附于(“主体”);
});代码>
您应该在CSS中使用pageX
和pageY
定位,否则这仅在图像位于页面左上角(如代码段中)时有效。您已经可以从body
的默认页边距中看到一个问题,该页边距将单击位置与文本位置偏移。@4谢谢您指出这一点。我更新了我的答案。如果您是向下投票人,您可以删除向下投票吗?您应该在CSS中使用pageX
和pageY
定位,否则这只在图像位于页面左上角(如代码段中)时起作用。您已经可以从body
的默认页边距中看到一个问题,该页边距将单击位置与文本位置偏移。@4谢谢您指出这一点。我更新了我的答案。如果你是下一个投票人,你能删除下一个投票吗?以后,避免使用NSFW(不安全工作)的图像。如果你一直在寻找图像的来源,我建议你;每个人都喜欢猫;无论他们是在工作还是在家,年轻人还是老年人!今后,避免使用NSFW(工作不安全)图像。如果你一直在寻找图像的来源,我建议你;每个人都喜欢猫;无论他们是在工作还是在家,年轻人还是老年人!