【问题标题】:Draggable div background to be one colour when over div1 and then another when over div2可拖动的 div 背景在 div1 上时为一种颜色,在 div2 上时为另一种颜色
【发布时间】:2015-09-24 19:26:59
【问题描述】:

我有一个可拖动的 div,它最初位于蓝色标题上,因此有一个带有蓝色文本和白色边框的白色背景,因此它很突出。 当它被拖到具有白色背景的页面的其余部分时,我希望背景变为蓝色,文本变为白色,边框变为蓝色。

可拖动的 div 使用绝对定位,因此实际上放置在标题元素之外,因此需要检测它所在的页面区域。

这可以使用 CSS 或 Javascript / jQuery 完成吗?

【问题讨论】:

标签: javascript jquery css


【解决方案1】:

在 JQuery 中,我想你可以捕捉到 mouseOver 事件 (https://api.jquery.com/mouseover/),当它被触发时,你会看到一些检查是否同时发生了同时拖动,如果发生了,改变元素的颜色mouseOver 事件发生了。

代码的重要部分:

HTML:

<div draggable="true" class="bar">Drag me!</div>     

<div id="foo"><p>To be dragged over.</div>      

JQuery:在 mouseOver 上查看是否有其他元素被拖动:

$( '#foo' ).mouseover(function() {
   if ($('.bar').is('.ui-draggable-dragging')) { return; // change color in here. }

});

注意: 您必须通过 id 附加此内容,至少我无法想象您如何将颜色更改应用于正确的元素。不过,颜色变化可以是一个函数,并且包含元素。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-23
    • 1970-01-01
    • 1970-01-01
    • 2018-03-07
    • 2013-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多