1、利用substring和lastIndexOf:
substring() 方法用于提取字符串中介于两个指定下标之间的字符。
substring() 方法返回的子串包括 开始 处的字符,但不包括 结束 处的字符。
lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,如果指定第二个参数 start,则在一个字符串中的指定位置从后向前搜索。
代码展示:
//侧边切换
$(".main-left-list").each(function () {
var url = window.location.href;
if (returnUrl($(this).children().attr("href"))==returnUrl(url)){
$(this).addClass("rankingPlate");
}
});
function returnUrl(href) {
var number = href.lastIndexOf('/');
return href.substring(number+1);
}
我的接口:
var url = /user/plate/0/62
注:
因为我是根据最后一个数的不同而为其添加的样式,所以首先获取当前打开页面的URL,在判断我获取的接口与其是否相等,如果相等则调用returnUrl这个函数根据截取的数字是否相同而为其添加样式。
2、利用substr
substr() 方法可在字符串中抽取从 开始 下标开始的指定数目的字符。
代码展示:
$(".rankScreenLi").each(function () {
var url = window.location.href;
if(returnUrlSub($(this).children().attr("href"))==returnUrlSub(url)){
$(this).addClass("rankScreenStyle");
}
});
function returnUrlSub(href) {
return href.substr(-3,1);
}
**注:**这个地方截的是指定位置的字符。
总结:
我写两种方法是有原因的,刚开始我用的是第二种方法,但是接口传过来的数字不是单位数字,所以用第二种方法就会有很大的bug。而第一种方法就是可以找到最后一个‘/’截取它后面所有的字符串然后进行比较。
转载:https://blog.csdn.net/weixin_43690348/article/details/100856017
查看评论