gpt4 book ai didi

jquery - 如何通过使用(单击)鼠标拖动它们来更改多个 div 的背景颜色?

转载 作者:太空狗 更新时间:2023-10-29 15:50:10 24 4
gpt4 key购买 nike

请看this example .

我这里有 4 个白色背景的 div。当我点击一个 div 时,它的背景变成蓝色。当我再次单击它时,背景切换回白色。

现在我想通过拖动来突出显示多个 div:我单击第一个 div 并按住鼠标按钮。 div 变蓝。通过单击按钮,我现在可以拖动到其他 div 上,一旦光标位于该元素上,它们的颜色就会改变。

我已经用 JQuery 的 .mousedown 函数尝试了一些东西,但我没有让它工作。

HTML:

<div class="box"></div>
<div class="box"></div>
<div class="box"></div>
<div class="box"></div>

CSS

.box{
float: left;
height: 100px;
width: 100px;
border: 1px solid #000;
margin-right: 10px;
}

.highlight{
background: #0000FF;
}

JS

$(document).ready(function(){
$('.box').click(function(){
if($(this).hasClass('highlight')){
$(this).removeClass('highlight');
}
else{
$(this).addClass('highlight');
}
});
});

最佳答案

可以使用mouseenter事件来处理

$(document).ready(function () {
var $box = $('.box').mousedown(function () {
$(this).toggleClass('highlight');
var flag = $(this).hasClass('highlight')
$box.on('mouseenter.highlight', function () {
$(this).toggleClass('highlight', flag);
});
});
$(document).mouseup(function () {
$box.off('mouseenter.highlight')
})
});

演示:Fiddle

关于jquery - 如何通过使用(单击)鼠标拖动它们来更改多个 div 的背景颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22550424/

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