今天突然遇到一个问题:网址本应该跳转到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 +与替换部分+剩余字符串;
看来还是大神的方法更加全面,作为一个小菜鸟,继续加油吧!