不好意思,提问的不够好,先上源码document.write('<iframe frameborder="0" scrolling="no" src="http://hits.sinajs.cn/A1/weiboshare.html?url=%url%&appkey=&type=3" width="16" height="16"></iframe>'.replace(/%url%/, encodeURIComponent(location.href)));一个分享微博的功能,我理解不了这句。replace(/%url%/, encodeURIComponent(location.href))/%url%/到底替换了什么?
1 回答
湖上湖
TA贡献2003条经验 获得超2个赞
/ 转义符为 %2F
% 转义符为 %25
所以
var str = '%2F%25url%25%2F';var reg = /%url%/;reg.test(str)
转义后等价于
var str = '/%url%/';var reg = /%url%/;reg.test(str)
location.href就是当前页面的链接,然后URI编码一下,整个的意思就是把iframe里的src的参数的第一个替换为url=当前链接的URI编码,例如,现在的页面:
<iframe frameborder="0" scrolling="no" src="http://hits.sinajs.cn/A1/weiboshare.html?url=https%3A%2F%2Fsegmentfault. com%2Fq%2F1010000008203094%2Fa-1020000008203213%2Fedit&appkey=&type=3"width="16" height="16"></iframe>
添加回答
举报
0/150
提交
取消