Javascript 获取鼠标位置并设置父div滚动的位置
您好,我正在尝试设置滚动条上div的位置。这是。实际上,我想滚动我放置鼠标并滚动的div。按一下它工作正常。但在Scroll上,它不起作用 这是我的jquery代码Javascript 获取鼠标位置并设置父div滚动的位置,javascript,jquery,html,Javascript,Jquery,Html,您好,我正在尝试设置滚动条上div的位置。这是。实际上,我想滚动我放置鼠标并滚动的div。按一下它工作正常。但在Scroll上,它不起作用 这是我的jquery代码 $( '#target' ).on( 'wheel', function( e ) { var x = e.pageX - this.offsetLeft; $( "#target1" ).scrollLeft(x); $( this ).html(x); }); 我想,在您正在查找的鼠标滚轮上,您必须使用event.origin
$( '#target' ).on( 'wheel', function( e ) {
var x = e.pageX - this.offsetLeft;
$( "#target1" ).scrollLeft(x);
$( this ).html(x);
});
我想,在您正在查找的鼠标滚轮上,您必须使用
event.originalEvent
。Mousewheel和DOMMouseScroll也需要事件。originalEvent
,因为不支持wheel事件
使用event.originalEvent.pageX
$('#target')。打开('mouseweell',函数(e){
e、 预防默认值();
var x=e.originalEvent.pageX-e.target.offsetLeft;
$(“#target1”)。向左滚动(x);
日志(e.originalEvent.pageX,e.target.offsetLeft);
$(this.html(x);
});
$(#target')。在('click',函数(e)上{
var x=e.pageX-this.offsetLeft;
$(“#target1”)。向左滚动(x);
log(e.pageX,this.offsetLeft);
$(this.html(x);
});代码>
正文{
填充:50px;
}
#目标{
背景颜色:灰色;
宽度:500px;
高度:240px;
填充顶部:50px;
字体大小:较大;
字体大小:粗体;
颜色:白色;
}
#目标1{
溢出-x:滚动;
宽度:300px;
高度:300px;
}
在您正在查找的鼠标滚轮上,我想您必须使用event.originalEvent
。Mousewheel和DOMMouseScroll也需要事件。originalEvent
,因为不支持wheel事件
使用event.originalEvent.pageX
$('#target')。打开('mouseweell',函数(e){
e、 预防默认值();
var x=e.originalEvent.pageX-e.target.offsetLeft;
$(“#target1”)。向左滚动(x);
日志(e.originalEvent.pageX,e.target.offsetLeft);
$(this.html(x);
});
$(#target')。在('click',函数(e)上{
var x=e.pageX-this.offsetLeft;
$(“#target1”)。向左滚动(x);
log(e.pageX,this.offsetLeft);
$(this.html(x);
});代码>
正文{
填充:50px;
}
#目标{
背景颜色:灰色;
宽度:500px;
高度:240px;
填充顶部:50px;
字体大小:较大;
字体大小:粗体;
颜色:白色;
}
#目标1{
溢出-x:滚动;
宽度:300px;
高度:300px;
}
您无法获取鼠标在滚动条上的当前位置,因此我创建了一个全局变量来存储它xMousePos
,请检查此小提琴:
var xMousePos=0;
var-yMousePos=0;
$(“#target1”)。滚动(函数(e){
var tg1=$(本);
var-tg=tg1。儿童(0);
var x=xMousePos;
//console.log(“滚动:+xMousePos”);
$(此)。向左滚动(x);
$(#target1”).children(0).html(x);
});
$(“#target1”).mousemove(函数(事件){
xMousePos=event.pageX-this.offsetLeft;
yMousePos=event.pageY-this.offsetLeft;
})
正文{
填充:50px;
}
#目标{
背景颜色:灰色;
宽度:500px;
高度:240px;
填充顶部:50px;
字体大小:较大;
字体大小:粗体;
颜色:白色;
}
#目标1{
溢出-x:滚动;
宽度:300px;
高度:300px;
}
您无法获取鼠标在滚动条上的当前位置,因此我创建了一个全局变量来存储它xMousePos
,请检查此小提琴:
var xMousePos=0;
var-yMousePos=0;
$(“#target1”)。滚动(函数(e){
var tg1=$(本);
var-tg=tg1。儿童(0);
var x=xMousePos;
//console.log(“滚动:+xMousePos”);
$(此)。向左滚动(x);
$(#target1”).children(0).html(x);
});
$(“#target1”).mousemove(函数(事件){
xMousePos=event.pageX-this.offsetLeft;
yMousePos=event.pageY-this.offsetLeft;
})
正文{
填充:50px;
}
#目标{
背景颜色:灰色;
宽度:500px;
高度:240px;
填充顶部:50px;
字体大小:较大;
字体大小:粗体;
颜色:白色;
}
#目标1{
溢出-x:滚动;
宽度:300px;
高度:300px;
}
工作完美,先生!让我在我的应用程序上测试一下。所以这只是关于原始事件?是,如果您尝试使用mouseweel
event;]实际上我不知道,但我的应用程序中没有鼠标滚轮。所以我用在了方向盘上。很好用,先生!让我在我的应用程序上测试一下。所以这只是关于原始事件?是,如果您尝试使用mouseweel
event;]实际上我不知道,但我的应用程序中没有鼠标滚轮。所以我使用了轮子。喜欢你的想法,但我认为@Yordan解决方案是最好的一个只使用originalEvent
@adeel是的,我也喜欢它,我不知道。originalEvent
喜欢你的想法,但我认为@Yordan解决方案是最好的一个只使用originalEvent
@adeel是的,我也喜欢它,我不知道.originalEvent