是否可以仅突出显示鼠标指针悬停的行?假设我有这一段:
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Nam in nisi eleifend, efficitur ligula vel, scelerisque risus.
Interdum et malesuada fames ac ante ipsum primis in faucibus.
Nam semper diam sodales eros dictum euismod. Duis ut hendrerit leo. Sed iaculis sem ac est porttitor facilisis.
In convallis facilisis libero ut interdum. Phasellus scelerisque ex in lacus tempus mollis. Integer scelerisque viverra elit id fringilla. Proin nibh arcu, imperdiet a lacus ac, feugiat interdum sapien. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Suspendisse ultrices vestibulum orci, a varius quam cursus ut. Nulla ut suscipit sapien. Morbi et urna elementum, pretium augue non, tristique nulla. Nulla massa tellus, facilisis at fringilla et, rutrum ac libero.
</p>
Run Code Online (Sandbox Code Playgroud)
如果我将鼠标悬停在第一行,如果我将鼠标悬停在第二行上等等,是否可以突出显示第一行?等等?
插图:
资料来源:http://www.crossboweducation.us/
我正在寻找适用于多行段落的解决方案.一个我不必手动添加每个单词的跨度的地方.
编辑(2016年6月21日): - (突出整个段落
的解决方案) Rory McCrossan的解决方案基本上有效但当我尝试在我的wordpress博客中实现它时突出显示有问题,起初效果很好,我向下滚动了一下并且突出显示位置计算错误.所以,我刚刚在这个网站上找到了一个简洁的解决方案,你需要加载hover.css并将类添加hvr-fade到每个<p>标签......这当然不会处理原始问题,但它是解决问题的另一种方法一个很好的css悬停效果集合很容易出现类似的问题.希望这有助于某人......
没有直接的方法可以在更大的元素中获得单行文本.为了达到你的要求,你可以将p标签的每个单词都包装在自己的单词中span.然后在悬停span标签时,您可以突出显示相同的兄弟姐妹offset().top.像这样的东西:
$('p').html(function() {
return $(this).text().replace(/\w+[,.]?\s+?/g, "<span>$&</span>")
});
$('p').on('mouseenter', 'span', function() {
var $span = $(this);
$('p span').filter(function() {
return $(this).offset().top == $span.offset().top;
}).toggleClass('hover');
}).on('mouseleave', 'span', function() {
$('p span').removeClass('hover');
})
Run Code Online (Sandbox Code Playgroud)
或者,您可以将单个div元素附加到p鼠标移动时跟随鼠标移动的父元素,p并充当线条阅读指南:
$('.text-block')
.append('<div class="line-marker"> </div>')
.on('mousemove', function(e) {
$(this).find('.line-marker').css('top', e.clientY);
})
Run Code Online (Sandbox Code Playgroud)
.line-marker {
display: none;
}
.text-block:hover .line-marker {
position: absolute;
width: 100%;
background-color: #CC0;
display: block;
z-index: -1;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
966 次 |
| 最近记录: |