当我单击页面上的链接时,我试图删除登录页面。该页面不是我的页面,因此我尝试使用用户脚本更改href。
无需任何修改,链接如下所示:
https://www.domain.com/out.php?u=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DPUZ1bC-1XjA%26amp%3Bfeature%3Drelated
我想要的是:
http://www.youtube.com/watch?v=PUZ1bC-1XjA&feature=related
我到目前为止所得到的:
http://www.youtube.com%2fwatch%3fv%3dpuz1bc-1xja%26amp%3bfeature%3drelated/
但是该地址在浏览器中不起作用。
这是我当前的代码:
$('a').each(function(index) {
var aLink = $(this).attr('href');
if(aLink) {
if(aLink.indexOf("out.php?u=") > 0) {
aLink = aLink.substring(51);
console.log(aLink);
$(this).attr('href', "http://"+aLink);
console.log($(this).prop('href'));
}
}
});
感谢所有帮助和提示。
最佳答案
您需要使用decode
decodeURIComponent
URL
更改:
$(this).attr('href', "http://"+aLink);
至:
$(this).attr('href', 'http://' + decodeURIComponent(aLink));