Javascript 用mousemove移动img

Javascript 用mousemove移动img,javascript,html,css-transforms,Javascript,Html,Css Transforms,我希望能够在图像放大后在其容器内移动一个img,因为你可以看到,一旦单击图像,它就会变得太大,你无法看到整个图像。还有,如果图像没有悬停,如何使其恢复正常?提前谢谢 //放大/缩小服装图像 $('.image')。单击(函数(){ $(this.toggleClass('normal-zoom-in'); }); .container{ 宽度:800px; 保证金:0自动; 边框:2件纯黑; 显示器:flex; } .img包装{ 利润率:10px; 溢出:隐藏; } .形象{ 宽度:100%

我希望能够在图像放大后在其容器内移动一个img,因为你可以看到,一旦单击图像,它就会变得太大,你无法看到整个图像。还有,如果图像没有悬停,如何使其恢复正常?提前谢谢

//放大/缩小服装图像
$('.image')。单击(函数(){
$(this.toggleClass('normal-zoom-in');
});
.container{
宽度:800px;
保证金:0自动;
边框:2件纯黑;
显示器:flex;
}
.img包装{
利润率:10px;
溢出:隐藏;
}
.形象{
宽度:100%;
身高:100%;
}
.文本{
宽度:40%;
填充:20px;
}
.正常变焦{
变换:比例(1);
光标:放大;
过渡:所有250ms;
}
.放大{
转换:比例(1.6);
光标:缩小;
过渡:所有250ms;
}

保存在发送给我们的感觉将是我们。快乐能使人们笑得合不拢嘴。旧的无味静止不动的持续法则害羞的偏爱。视病情严重程度而定,吃东西时要用大便。不愉快的,不害羞的。早起的心现在遇见了可爱的夜晚。在他最后一次来这里的时候。输入了“禁止”消息后,已启用“禁止”。没有人会这样做。亲爱的,但她所经历的一切让盖伊感觉到了身体。六个原则,优势和使用恳求果断。吃饭时会把家里的东西打开看看接下来会发生什么。再次以am的身份进入法庭。更大的十六岁,正在组建的上校不在。因此,巴顿提出了一个建议。他突然变得精神饱满


您可以在带有class
的图像上使用mousemove事件侦听器。放大
以更改左侧和顶部CSS参数。确保设置
位置:相对在图像上

例如:

$(document).on('mousemove', '.zoom-in', function( event ) {
  $(".text").text(event.pageX + ", " + event.pageY);
  var positionLeft = event.pageX - $(this).width()/2;
  var positionTop = event.pageY - $(this).height()/2;
        $(this).css({'left': positionLeft, 'top': positionTop});
});

这是一个。

您可以在带有class
的图像上使用mousemove事件侦听器。放大
以更改左侧和顶部CSS参数。确保设置
位置:相对在图像上

例如:

$(document).on('mousemove', '.zoom-in', function( event ) {
  $(".text").text(event.pageX + ", " + event.pageY);
  var positionLeft = event.pageX - $(this).width()/2;
  var positionTop = event.pageY - $(this).height()/2;
        $(this).css({'left': positionLeft, 'top': positionTop});
});

这是一个。

因为您正在使用
变换:缩放()
进行缩放效果,所以修改
变换原点
以更改鼠标移动时缩放效果的中心点会更快、更正确:

//放大/缩小服装图像
$('.image')。单击(函数(){
$(this.toggleClass('normal-zoom-in');
});
$('.image')。on('mousemove',函数(事件){
//这将提供图像在页面上的位置
var bbox=event.target.getBoundingClientRect();
//然后我们测量鼠标在x和y方向的距离
var mouseX=event.clientX-bbox.left;
var mouseY=event.clientY-bbox.top;
//然后计算鼠标在图像中的百分比距离
var X百分比=(鼠标/盒子宽度)*100;
变量yPercent=(鼠标/盒子高度)*100;
//然后,我们更改图像上的“transform origin”css属性,使缩放效果位于鼠标位置的中心
//event.target.style.transformOrigin=xPercent+'%'+yPercent+'%';
//在jQuery中更清楚一点:
$(this.css('transform-origin',(xPercent+'%'+yPercent+'%');
//我们添加“%”单元以确保字符串与它变成的css声明完全相同。
});
//如果你想让它在悬停时自动触发
$('.image')。在('mouseenter',function()上{
$(this.addClass('zoom-in');
$(this.removeClass('normal-zoom');
});
//不悬停时停止
$('.image').on('mouseleave',function(){
$(this.addClass('normal-zoom');
$(this.removeClass('zoom-in');
});
.container{
宽度:800px;
保证金:0自动;
边框:2件纯黑;
显示器:flex;
}
.img包装{
利润率:10px;
溢出:隐藏;
}
.形象{
宽度:100%;
身高:100%;
}
.文本{
宽度:40%;
填充:20px;
}
.正常变焦{
变换:比例(1);
光标:放大;
转换:转换250ms;
}
.放大{
转换:比例(1.6);
光标:缩小;
转换:转换250ms;
}

保存在发送给我们的感觉将是我们。快乐能使人们笑得合不拢嘴。旧的无味静止不动的持续法则害羞的偏爱。视病情严重程度而定,吃东西时要用大便。不愉快的,不害羞的。早起的心现在遇见了可爱的夜晚。在他最后一次来这里的时候。输入了“禁止”消息后,已启用“禁止”。没有人会这样做。亲爱的,但她所经历的一切让盖伊感觉到了身体。六个原则,优势和使用恳求果断。吃饭时会把家里的东西打开看看接下来会发生什么。再次以am的身份进入法庭。更大的十六岁,正在组建的上校不在。因此,巴顿提出了一个建议。他突然变得精神饱满


由于您正在使用
变换:缩放()
进行缩放效果,因此修改
变换原点
以更改鼠标移动时缩放效果的中心点会更快、更正确:

//放大/缩小服装图像
$('.image')。单击(函数(){
$(this.toggleClass('normal-zoom-in');
});
$('.image')。on('mousemove',函数(事件){
//这将提供图像在页面上的位置
var bbox=event.target.getBoundingClientRect();
//然后我们测量鼠标在x和y方向的距离
var mouseX=event.clientX-bbox.left;
var mouseY=event.clientY-bbox.top;
//然后计算鼠标在图像中的百分比距离
var X百分比=(鼠标/盒子宽度)*100;
变量yPercent=(鼠标/盒子高度)*100;
//然后,我们更改图像上的“transform origin”css属性,使缩放效果位于鼠标位置的中心
//event.target.style.transformOrigin=xPercent+'%'+yPercent+'%';
//在jQuery中更清楚一点:
$(this.css('transform-origin',(xPercent+'%'+yPercent+'%');
//我们添加“%”单元以确保字符串与它变成的css声明完全相同。
})