在body下面加上

<script type="text/javascript">
$(document).ready(function(){
var url = document.location.href;
var index1 = url.lastIndexOf('/');
var page_name = url.substring(index1 + 1, url.length);
var a_l = $('a');
a_l.each(function () {
var that = $(this);
var url2 = that.attr('href');
var index2 = url2.lastIndexOf('/');
var page_name2 = url2.substring(index2 + 1, url2.length);
if (page_name == page_name2) {
$(this).parent().addClass('active');
$(this).parent().parent().parent().addClass('open');
}
});
});
</script>

这段是从别人那抄过来的,用的时候发现两个问题

1、页面不能同名,比如都叫Index的就会一起被选中

2、如果页面中的href属性存在其他内容,比如js方法,一些针对string类型的方法就会报错,比如lastIndexOf(),这种可以把url强制转换成string类型,有两种方法:

  a.toString()我用的时候有问题, 当时情况有比较紧急,没有查原因,用了第二种方法;

  b.(“” + string)

04-30 04:09