gpt4 book ai didi

javascript - 使用 jQuery 鼠标拖动时垂直滚动页面并水平滚动 div 内的大图像

转载 作者:太空宇宙 更新时间:2023-11-03 18:24:02 24 4
gpt4 key购买 nike

我有一个页面,我想在事件鼠标按下时垂直滚动,我已经在这个 question link 上找到了答案。 .在我的例子中,我有一个 div 包含用户放在上面的图像,有时它的尺寸比我的 div 尺寸大,使用 overflow:auto; 我在里面水平滚动那个分区。所以我需要在该 div 上水平应用拖动滚动。

HTML

<html>
<body>
<div id="container">
<div class="detail-title"> TITLE </div>
<div class="detail-content">
<img src="...." />
!-- long content --!
</div>
</div>
</body>
</html>

CSS

.detail-main-content-box {
background: none;
display: block;
left: 0;
min-height: 350px;
overflow: auto;
padding: 5px 5px 5px 5px;
width: auto;
}

jQuery 来自答案链接

$(document).on({
'mousemove': function (e) {
clicked && updateScrollPos(e);
},
'mousedown': function (e) {
clicked = true;
clickY = e.pageY;
$('html').addClass('block-selection').css({ 'cursor': 'url(../img/closedhand.cur), default' });
},
'mouseup': function () {
clicked = false;
$('html').removeClass('block-selection').css('cursor', 'auto');
}
});

var updateScrollPos = function(e) {
$(window).scrollTop($(window).scrollTop() + (clickY - e.pageY));
};

我如何在 div 上应用它?我尝试将 $(document) 更改为 $('.detail-content') 并将函数 scrollTop 更改为 scrollLeft 但什么也没有发生。这是 fiddle当前条件。

最佳答案

这个问题已经在这里搁置了两年之久,甚至没有一个有用的评论。好的,这是我的尝试。希望它可以帮助 (le roi est mort vive le roi)

<script type="text/javascript">

var clicked = true;
var clickY = e.pageY;
$('.detail-content').on({
'mousemove': function (e) {
clicked && updateScrollPos(this,e);

},
'mousedown': function (e) {
clicked = true;
clickY = e.pageY;
$('html').addClass('block-selection').css({ 'cursor': 'grabbing' });
},
'mouseup': function () {
clicked = false;
$('html').removeClass('block-selection').css('cursor', 'auto');
}
});

var updateScrollPos = function(obj,e) {
$(obj).scrollTop($(obj).scrollTop() + (clickY - e.pageY));
clickY = e.pageY;
};

</script>

关于javascript - 使用 jQuery 鼠标拖动时垂直滚动页面并水平滚动 div 内的大图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21252009/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com