e.pageX在所有分辨率下都无法正常工作

时间:2014-07-09 10:55:53

标签: jquery html5 css3

点击一个范围,我必须在该位置显示一条消息。所以我使用e.pageX来确定鼠标点击位置,因为可能有两个以上的跨度。它在分辨率下工作正常。如果我最大化分辨率,则消息显示的位置远离点击的跨度。

$('div.moveRemoveItems').on('click','.detailRowThree #itemRawHerb',function(e) {
    e.preventDefault();
    $('div#viewboxCR').css( 'left', e.pageX+30 );
    $('div#viewboxCR').show();
    $('div#viewboxCR').css('z-index','999');
}

1 个答案:

答案 0 :(得分:0)

你应该在这个html模型中设置css属性:

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

所以css属性应该是

.parent{
position: fixed;
width: 100%;
height: 100%
top: 0;
left: 0;
}

.child{
position: relative;
width: 200px;
margin: auto;
}

所以它应该有效。不过你可以使用jquery方法.resize(),像这样:

$(window).on('resize', function() {
    // your diffirent code here for calcaulating parametrs 
});

如果我理解你的话。