今天突然遇到一个问题:网址本应该跳转到wap端页面的,结果加载的链接都是www的页面,这样的话,点击之后的链接是无法打开的,没有内容呈现,所以,就想到用js转一次网址。

问题分析:将http://wap.****.com变为http://www.****.com

实现方法:正则将字符串替换

js中的replace用法 replace(A,B),用B替换A;

前端小白实现代码:

 var str = $(this).attr("datahref"); //获取a链接的网址字符串; 
 var dd = str.replace(/^(.{7})(.{3})(.*)$/, '$1www$3'); //正则替换,从第7位开始,用www连续替换3个字符;
 window.open(dd);

第一步:获取链接,转为字符串;

第二步:用js中的replace进行替换,字符从第7为开始,持续改变3为,后面“$1***$3”中***就是是所要替换的字符;

大神实现代码:

 var str = $(this).attr("datahref"); //获取a链接的网址字符串; 
 var dd = str.replace(/^(https?:\/\/)wap(.*)$/, '$1www$2'); 
 window.open(dd);

第二步:直接将网址字符串分割成3部分,https:?无论是http还是https +与替换部分+剩余字符串;

看来还是大神的方法更加全面,作为一个小菜鸟,继续加油吧!

原文地址:https://course.51qux.com/137.html