相关疑难解决方法(0)

按住鼠标左键时,Chrome不会应用css悬停样式

在Google Chrome中,按住鼠标左键时不会触发CSS悬停状态,如下所示:

a:hover {
  color: red;   
}
Run Code Online (Sandbox Code Playgroud)
<a href="http://www.jsfiddle.net">words</a>
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/RHGG6/1/

在FF8或IE9中不会发生此问题.这是有问题的,因为我正在实现拖放操作并使用CSS突出显示放置目标.我可以在JavaScript中非常简单地做到这一点,但这对于本质上是一个CSS问题来说似乎很苛刻.这有什么变通方法吗?

css webkit google-chrome

22
推荐指数
1
解决办法
5222
查看次数

清除卡住:悬停psuedoclass

由于webkit错误(我认为),有一种情况,我有一个卡住的:hover伪造的类.你可以在这里看到:http://jsfiddle.net/zFk2V/3/

拖放后,前一个元素:hover在Chrome中保持状态.如果您将鼠标悬停在卡住的项目上,则悬停状态会清除.

我认为应该可以使用事件触发,DOM重排触发或其他一些shenaniganary来清除元素的悬停状态.

我试过了:

$('[draggable]').trigger('mouseenter')
$('[draggable]').trigger('mousemove')
$('[draggable]').trigger('mouseout')
$('[draggable]').trigger('mouseleave')
$('[draggable]').trigger('blur')
$('[draggable]').trigger('hover')

$('[draggable]').toggleClass('selected')
$('[draggable]').toggleClass('selected') // twice to reset to original

$('[draggable]').height(true) // should trigger a DOM reflow
Run Code Online (Sandbox Code Playgroud)

......以及所有这些的不同组合,但没有成功

我甚至试过这个,我确信它会起作用,即使是不可接受的:

$('[draggable]').hide()
setTimeout(function(){
  $('[draggable]').show()
}, 10)
Run Code Online (Sandbox Code Playgroud)

这也行不通.:(

在所有情况下,:hover国家仍然存在.如果是铬检查器和视觉效果,您可以验证这一点.

我很想知道是否存在针对此的错误,或者是否有其他人听说过它.我发现的只是另一个问题在谈论它,答案是一个大锤.

css jquery html5 webkit

5
推荐指数
1
解决办法
1873
查看次数

标签 统计

css ×2

webkit ×2

google-chrome ×1

html5 ×1

jquery ×1