首先,我是 js/jquery 的新手。我有一个列表,可以修改并添加到由以下定义的页面中:
<ol id="elementlist"></ol>
在页面加载时,它是一个空列表。使用 JQuery 将列表项附加到它。
我希望能够将鼠标悬停在每个元素上并更改颜色。我已经使用 JQuery 提供的 on() 函数完成了这项工作:
// highlight on mouseover
$("#elementlist").on("mouseover", "li", function(){
$(this).css("background-color","#f2fdf2");
});
// restore white background
$("#elementlist").on("mouseout", "li", function(){
$(this).css("background-color","#ffffff");
});
我还希望能够双击一个 li,突出显示它并使其突出显示。当悬停在该元素上时,这也应该禁用更改颜色。我可以双击并更改颜色,但无法使用以下代码禁用悬停处理程序:
// highlights on double click, but doesn't disable mouseover/mouseout
$("#elementlist").on("dblclick", "li", function(){
$(this).css("background-color","#f2d2d2");
$(this).off("mouseover", "");
$(this).off("mouseout", "");
});
我无法仅禁用已单击的特定列表项(其他列表项应该仍然能够突出显示)。任何帮助将不胜感激。