选中jquery文件树高亮显示

时间:2015-07-06 17:39:42

标签: javascript jquery html css filetree

我正在实现一个jQueryFileTree(http://www.abeautifulsite.net/jquery-file-tree/)作为文件浏览器,并希望用户点击的每个文件或目录保持突出显示。我知道这可以使用简单的JavaScript或CSS来完成,但我不太了解源代码,知道如何或在何处实现突出显示。有人能指出我正确的方向吗?

3 个答案:

答案 0 :(得分:1)

好吧,您可以使用click处理程序捕获点击,并使用addClass添加一个类。

$('.thing-i-will-click-on').click(function() {
  $(this).addClass('selected');
});

您也可以使用类似方法删除类。

$('.selected').removeClass('selected');

将这两件事结合起来可以得到理想的结果。

答案 1 :(得分:1)

所以经过一点点的修修补补后我才开始工作!

首先你必须进入jqueryFileTree.js并从中修改第80行:

h($(this).attr('rel'));

为:

h($(this));

这将返回单击的对象而不是文件名。要在.fileTree定义中的函数(文件)中获取文件名,您必须使用:

file.attr('rel');

现在您拥有了该对象,您可以在函数(文件)中使用它来突出显示您的代码。 (选中的是我创建的用于更改背景颜色的CSS类)

$(".selected").removeClass('selected');
file.addClass('selected');

答案 2 :(得分:0)

$('#your_filelist_id').fileTree({
  root: '/',
  script: '/connectors/jqueryFileTree.php'
}, function(file) {
  var flist = $('#your_filelist_id a[rel="' + file + '"]');
  if(flist.hasClass('selected')) {
    flist.removeClass('selected');
  }
  else {
    flist.addClass('selected');
  }
});