我有一个带有:hover
我调用的状态的元素$.draggable()
。助手是一个克隆,所以当我拖动元素时,会创建一个克隆,然后拖动它。但是,有时,:hover
我的可拖动元素上的状态没有关闭,我必须在不拖动的情况下执行第二次鼠标悬停/移出,然后该元素将返回其原始状态。这都是相当标准的东西,这是$.draggable()
电话:
$("#" + slot).draggable({
helper: "clone",
appendTo: "body",
scope: "my_scope",
start: function (event, ui) {
// do some stuff when the element starts being dragged
},
stop: function () {
// do some stuff when the element stops being dragged
}
});
以下是该元素具有的所有 CSS 样式:
.inventory_item {
width: 50px;
height: 50px;
background-color: #222;
font-family: Courier;
text-align: center;
margin: 10px;
line-height: 50px;
font-size: x-large;
opacity: 1;
cursor: pointer;
border-radius: 5px;
-moz-border-radius: 5px;
-webkit-box-shadow: inset 0 0 5px #111;
-moz-box-shadow: inset 0 0 5px #111;
box-shadow: inset 0 0 5px #111;
}
及其:hover
状态:
.inventory_item:hover {
-webkit-box-shadow: inset 0 0 10px #555;
-moz-box-shadow: inset 0 0 10px #555;
box-shadow: inset 0 0 10px #555;
}
现在,据我所知,没有办法:hover
使用 Javascript 更改元素的状态。那么,我的另一个选择是使用类和 Javascript mouseover/out 事件来模拟可控:hover
状态。但在我这样做之前,是否有任何已知的修复方法?这是一个常见的 jQuery UI 错误吗?我的搜索没有发现任何东西。
这是问题的屏幕截图:
由于我的屏幕截图软件,您看不到那里的鼠标光标,但它就在被拖出的元素上方。即使它不在突出显示的可拖动元素上方,该元素的:hover
状态也是打开的。不酷。