在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)