Reputation: 6845
I have a group HTML element and they are in draggable div element. So I have a range HTML element. When I want to move range, all line is dragging. I set draggable="false"
of range element, but it does not work. (I tested in chrome browser)
.draggable {
width: 400px;
height: 400px;
}
<div draggable="true" class="draggable">
<input type="checkbox" />
<label>This is line</label>
<input type="range" min="0" max="100" />
</div>
Upvotes: 1
Views: 335
Reputation: 1028
Disable/Enable "draggable" on mousedown and mouseup.
document.querySelector('input[type="range"]').addEventListener('mousedown', (event) => {
setDraggable(event.target.parentNode, false);
});
document.querySelector('input[type="range"]').addEventListener('mouseup', (event) => {
setDraggable(event.target.parentNode, true);
});
const setDraggable = (e, val) => {
if (e.parentNode) {
setDraggable(e.parentNode, val);
}
e.draggable = val;
}
.draggable{
width:400px;
height:400px;
}
<div draggable="true">
<div class="draggable" draggable="true">
<input type="checkbox" />
<label>This is line</label>
<input type="range" min="0" max="100" id="rangeInput" />
</div>
</div>
Upvotes: 0