使用 jQuery-UI 1.7,我集成了滑块。一切正常,但滑块的手柄在拖动时相互重叠。我该如何防止这种情况。
你可以在这里看到我的 ui 滑块
默认视图:
重叠视图:
您可以通过检测slide
事件处理程序中的重叠并返回 false 以防止发生滑动来完成此操作。例子:
$( "#slider-range" ).slider({
range: true,
min: 0,
max: 500,
values: [ 75, 300 ],
slide: function( event, ui ) {
if ( ( ui.values[ 0 ] + 20 ) >= ui.values[ 1 ] ) {
return false;
}
}
});
body { padding: 50px; }
<link href="http://code.jquery.com/ui/1.11.1/themes/smoothness/jquery-ui.css" rel="stylesheet">
<script src="http://code.jquery.com/jquery-1.11.1.js"></script>
<script src="http://code.jquery.com/ui/1.11.1/jquery-ui.js"></script>
<div id="slider-range"></div>
20
只是根据句柄的宽度进行硬编码。根据您的用例,您必须将其更改为任何有意义的内容。
<script>
$( "#slider-range" ).slider({
range: true,
min: 0,
max: 500,
values: [ 75, 300 ],
slide: function(event, ui) {
if ( (ui.values[0] + 55) >= ui.values[1] ) {
return false;
}
}
});
</script>