JQueryUI:单击鼠标的位置对话框



我想把用户点击的jquery对话框放在屏幕上。

到目前为止,我有:

$("#something").click(function(e){
    $("#myDialog").dialog( "option", "position", [e.pageX,e.pageY]);
    $("#myDialog").dialog('open');
});

但是由于一些页面滚动问题,这不起作用。我怀疑它会工作,如果我不需要向下滚动页面,以获得与id="something"的元素,我点击。我认为这是因为Y(高度)位置是整个页面的位置,而不是可视区域。

是否有一种方法可以抓取可见区域XY共词或计算可见区域的大小,并做一些时髦的数学来纠正页面XY共词?

谢谢。

试试这个:

$("#something").click(function(e)
{
    var x =e.pageX -$(document).scrollLeft();
    var y =e.pageY -$(document).scrollTop();
    $("#myDialog").dialog( "option", "position", [x,y]);
    $("#myDialog").dialog('open');
});

最新更新