-3

如何在网页中创建网格 (10X10) 并允许用户单击网格中的任何位置并以大约一位十进制记录 (x,y) 位置,例如覆盖值 0.0~10.0 或 0.1~9.9?

谢谢!

4

3 回答 3

2

使用 a<canvas>作为网格,并附加一个click事件监听器。

于 2012-04-11T23:11:23.240 回答
1

您可以使用鼠标事件对象的 clientX 和 clientY 属性记录鼠标点击:

document.addEventListener('click', function(event){event.clientX;event.clientY;}, false);

上面的代码只是一个演示,它甚至不是跨浏览器兼容的。event.clientXevent.clientY按住鼠标坐标。

于 2012-04-11T23:15:37.980 回答
0

演示

我使用了 jQuery 库。

var boxX = 0;
var boxY = 0;
var box = '<div class="box" />'; // define the .box element

for(var i = 0; i<100;i++){       // create 100 boxes
  $('#grid').append(box);
}

$('.box').on('click',function(){
  boxX = $(this).position().left;
  boxY = $(this).position().top;
  $(this).text('X='+ boxX +' , Y='+ boxY);
});

而不是.position()(从父元素获取元素位置)
,您可以使用.offset()从窗口边界获取元素偏移量。

于 2012-04-11T23:26:18.420 回答