gpt4 book ai didi

javascript - 通过滚动移动 DIV

转载 作者:搜寻专家 更新时间:2023-11-01 04:51:02 25 4
gpt4 key购买 nike

我正在创建一个 jQuery 滚动条,它滚动

中的内容。有点像 jQuery ScrollPane .

我已经到了需要移动滚动按钮的地步。我的问题是:没有任何 UI 插件的最佳方法是什么?因此,当用户单击滚动按钮时,它可以通过 mousedown 事件在其父容器中垂直移动。我怎么能那样做?

最佳答案

这是一个起点,希望这就是您所追求的:

$(function() {
$('.slider').slider();
});

$.fn.slider = function() {
return this.each(function() {
var $el = $(this);
$el.css('top', 0);
var dragging = false;
var startY = 0;
var startT = 0;
$el.mousedown(function(ev) {
dragging = true;
startY = ev.clientY;
startT = $el.css('top');
});
$(window).mousemove(function(ev) {
if (dragging) {
// calculate new top
var newTop = parseInt(startT) + (ev.clientY - startY);

//stay in parent
var maxTop = $el.parent().height()-$el.height();
newTop = newTop<0?0:newTop>maxTop?maxTop:newTop;
$el.css('top', newTop );
}
}).mouseup(function() {
dragging = false;
});
});
}
.container{
position:relative;
border:1px solid red;
height:100px;
}
.slider{
height:20px;
width:20px;
background:green;
position:absolute;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
<div class="container">
<div class="slider" />
</div>
</div>
<br/>
<div class="container">
<div class="slider" />
</div>

关于javascript - 通过滚动移动 DIV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6610388/

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