我有几行的正文。每一行都包裹在一个 span 中,末尾有一个递增的值,以确定哪一行是什么(例如,第 1 行、第 2 行、第 3 行等)。
<div id="textbody">
<span id="line-1">what is love</span><br/>
<span id="line-2">oh baby, don't hurt me</span><br/>
<span id="line-3">Don't hurt me no more</span><br/>
<span id="line-4">Oh, baby don't hurt me</span><br/>
<span id="line-5">Don't hurt me no more</span><br/>
<span id="line-6">What is love</span><br/>
<span id="line-7">Yeah</span><br/>
</div>
现在我有一个数组,表示第 1 行和第 2 行组合在一起,第 5-6 行组合在一起。这意味着当鼠标悬停在第 1 行上时,然后在第 1 行和第 2 行(根据数组)将背景变成不同的颜色,如果第 5 行被鼠标悬停,则在第 5 行和第 6 行。
它只是在跨跨度的基础上进行,但我不确定如何处理它的数组部分。我应该使用像 in_array 这样的东西吗?我知道这是一个 PHP 函数,但 Google 告诉我人们已经为 JS 构建了类似的函数。
$("span[id^='line-']").live('mouseover', function(e) {
e.preventDefault();
var line_id = $(this).attr('id').substring(6);
$(this).addClass("highlight1");
return false;
});
$("span[id^='line-']").live('mouseleave', function(e) {
e.preventDefault();
var line_id = $(this).attr('id').substring(6);
$(this).removeClass("highlight1");
return false;
});