0

将jQuery用于列表项单击事件,是否可以以某种方式突出显示所选项目?

$('#listReports').delegate('li', 'click', function () {
  var filename = $(this).text();
  // Any highlight methods or css tricks that I can add/remove for each click
});
4

3 回答 3

4

您可以使用addClassremoveClass方法:

.selected {
   property: value
}

$('#listReports').delegate('li', 'click', function () {
     //var filename = $(this).text();
     $('.selected').removeClass('selected');
     $(this).addClass('selected');
});
于 2012-11-20T15:33:14.860 回答
0
$('#listReports').delegate('li', 'click', function () {

     var filename = $(this).text();
     $('.highlight').removeClass('highlight');
     $(this).toggleClass('highlight');
});


.highlight{
  background-color: #ddd;  /*or whatever color */
  }
于 2012-11-20T15:33:29.593 回答
0

可能最适合您使用 .on() 方法,如 jQuery 网站所述

从 jQuery 1.7 开始,.delegate() 已被 .on() 方法取代

试试吧

$("#listReports").on( "click", "li", function( ) {
    var filename = $(this).text();
    $(this).addClass("selected").siblings().removeClass("selected")
}

显然,然后.selected适当地设置类的样式

于 2012-11-20T15:37:07.457 回答