小言_互联网的博客

a标签跳转接口后添加样式

343人阅读  评论(0)

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
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场