2016-07-31 136 views
0

我有我的父母DIV获取鼠标单击位置,在该位置

<div class="parent"> 
    <div class="child"></div> 
</div> 

内一个div实例化一个div和CSS是

.parent{  
width: calc(100% - 299px); 
height: calc(100% - 78px); 
display: inline-block; 
overflow: scroll; 
.child { 
    width:1500px; 
    height: 2500px; 
    background-color: rgba(0,0,0,0); 
} 
} 

当我点击鼠标子元素我想获得鼠标位置的子元素所以最小是0-0最大是1500-2500 然后当我点击我想创建一个div在该点击的位置我怎么能做到这一点? // jQuery是首选

回答

0

要获得坐标,你可以尝试:

$('.child').click(function(e) { 
    alert(e.pageX+ ' , ' + e.pageY); 
}); 
0

元素中的鼠标位置是事件的OFFSETX和OFFSETY(Y在顶部最高最低,并在底部屏幕)。新元素的位置还需要考虑父元素的位置,因此它的左上角坐标被添加(请参见fiddle):

$(".child").on("click", function(event) { 
    alert("Mouse position within child div: X: " + event.offsetX + 
    ", Y:" + event.offsetY); 
    var offX = $(this).css("left"); 
    var offY = $(this).css("top"); 
    var styles = { 
    left : event.offsetX + parseInt(offX) + "px", 
    top: event.offsetY + parseInt(offY) + "px" 
    }; 
    $(this).append("div").addClass("grandchild").css(styles); 
});