【发布时间】:2017-08-14 18:22:09
【问题描述】:
我有两个div,一个在另一个之上。 div 都有一个 span 与文本是省略号,我想要做的是将鼠标悬停在 span 上时,显示文本。但是现在,第一次悬停后,下一次悬停到顶部span,第二个span 的文字还在,有点像transparent。
编辑:我之前使用 css 而不是 Jquery,但是在最近的 Chrome 更新之后,我的悬停不起作用,所以我必须使用 Jquery。
旧 CSS:
.hover:hover {
overflow: visible;
white-space: normal;
min-width: 200px;
background-color: #E5E5E5;
z-index: 1000;
position: relative;
font-family: Verdana;
}
这里是jsFiddle
$('.hover').on('mouseover', function() {
$(this).css({
'overflow': 'visible',
'white-space': 'normal',
'min-width': '200px',
'background-color': 'rgba(229,229,229,1)',
'z-index': '100',
'position': 'relative',
'font-family': 'Verdana'
})
})
$('.hover').on('mouseleave', function() {
$(this).css({
'font-size': '15px',
'color': '#15428B',
'background-color': 'rgba(255,255,255,0)',
'width': '200px',
'text-overflow': 'ellipsis',
'white-space': 'nowrap',
'overflow': 'hidden'
})
})
.box {
height: 20px;
float: left;
clear: left;
border: 1px solid black;
width: 200px;
}
.hover {
font-size: 15px;
color: #15428B;
width: 200px;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='box'><span class='hover'>Hello World!Hello World!Hello World!Hello World!Hello World!Hello World
</span></div>
<br>
<div class='box'><span class='hover'>Hello World!Hello World!Hello World!Hello World!Hello World!Hello World
</span></div>
所以,正如我提到的,这可能是 chrome 问题。我卸载了我的 chrome 并正在使用 Chrome Canary,它可以使用旧的 CSS 方法和 @Toastrackenigma 的方法
【问题讨论】:
标签: javascript jquery html css css-selectors