你能让Firebug中的悬停状态“固定”吗?

72

当我在调试一个网站时,有时悬停的选择器太冗长了,并且与其他选择器相似。是否有一种方法可以在Firebug中应用一种“粘性”状态来悬停规则?

例如; 我悬停在导航栏上,并想将选择器从firebug复制出来以在CSS中搜索,但是一旦我移动鼠标,选择器(显然)消失了,因为导航<li>不再悬停。

有没有办法解决这个问题?

谢谢 :)


请查看此答案以测试Chrome和Firefox中的悬停状态:https://dev59.com/KGkv5IYBdhLWcg3wbgUx#20716179 - Subodh Ghulaxe
5个回答

76

在检查链接时,Firebug显示默认的CSS状态,即应用于a:link的样式。默认情况下不显示:hover和:active样式。幸运的是,您可以通过单击“样式”并选择适当的选项来更改链接的状态:

输入图像描述


5
我知道提问者已经回答了自己的问题并且很可能想要保留他的积分,但是这个回答更加“完整”。(我没有完全理解提问者的回答,并且认为他指的是在浏览器菜单下的开发人员选项之一) - BillyNair
请注意,如果元素使用其他方式来控制悬停/活动/焦点,例如使用Javascript,则此Firebug方法将无法正常工作。例如,一个jQuery插件正在监听元素上的点击事件,然后动态更改元素上的CSS类。我以为我疯了。 - Kalnode

56

对于我想要的,样式下拉菜单中有一个选项,用于设置元素的CSS样式。只需单击下拉菜单,然后选择:active:hover,即可保留所选择和悬停元素的样式 :)


19
我的生活……它有了巨大的改善,三年前我还以为这是不可能的。 - Moak
8
多年来,我一直在使用奇怪的右键单击并尝试使元素出现故障 - 噢,为什么我没想到要检查样式菜单! - electblake
仍然是一个有用的答案 :) - John Smith
你太棒了!谢谢你提供这个问答 :) 对我帮助很大。 - rails_has_elegance
2
这极大地改善了我的编程职业生涯,没有任何言语可以表达我现在的情感! - Kevin Simple

11

有时候某些物品并不会受到":hover"状态的影响,而是通过jQuery或类似方法中的mouseover事件,这种情况下你可以通过在控制台选项卡中输入以下代码手动触发(或强制触发)该事件:

$('#a-random-selector').mouseover()

希望这能帮到你,我也曾来这里寻找这个答案,但最终还是得靠自己解决。


太棒了。你能让它保持在那个状态吗?比如,从那里关闭鼠标悬停事件?因为我试图调整值,但鼠标悬停状态总是消失。 - Doug Cassidy
1
如果你想要防止状态,你需要覆盖事件监听器,重新定义当该事件触发时特定元素的操作。我建议你查看事件定义的源代码并在那里删除它...但有些页面的代码很多。 - Jorge Rivera
1
最终我采用了双重检查方法(使用内置的ff和firebug),并且在使用您的代码后还使用了.unbind('mouseenter mouseleave')。 - Doug Cassidy

3
您可以尝试使用Chrome检查器,在样式下触发:active :visited状态等。

2
调试与Firefox相关的问题需要使用Firefox检查器。 - Walter Roman

2

打开火狐浏览器的Firebug和Web Developer->Inspector。在Inspector窗口中,找到鼠标悬停开始的代码行,右键单击鼠标并选择:hover。然后悬停状态将保持不变,您可以在Firebug中进行任何操作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接