繁体   English   中英

如何创建在URL上添加前缀的小书签?

[英]How do I create a bookmarklet that adds an infix to a URL?

我想创建一个书签,通过我的大学的代理服务器加载当前页面。 这样可以更轻松地从Google Scholar等访问期刊。 我知道如何将内容附加到URL,但是我找不到如何在特定点插入中缀的方法。

我想采用这样的网址:

http://www.jstor.org/stable/3167630

并将其转换为:

http://www.jstor.org.naomi.*universityname*.edu:2048/stable/3167630

我将如何编写此书签?

var mySiteURL = 'http://www.jstor.org/stable/3167630';
var firstPart = mySiteURL.substring(0, mySiteURL.indexOf(".org")+4);
var middlePart = '.naomi.*universityname*.edu:2048';
var lastPart = mySiteURL.substring(mySiteURL.indexOf(".org")+4, mySiteURL.length);
alert(firstPart + middlePart + lastPart);

首先抓取当前的URL window.location.href 我假设它总是包含.org。 然后执行这些字符串操作以更改所需的url,然后导航至该URL。 window.location.replace('https://www.google.com/');

这是我能想到的最强大的功能:

 var string = "http://www.jstor.org/stable/3167630"; var regex = /(https?:\\/\\/(?:www\\.)?.*?)\\/(.*)/; var result = string.replace(regex, function(match, m1, m2) { return m1 + ".naomi.*universityname*.edu:2048/" + m2; }); alert(result); 

在您的书签中,您可能要用窗口位置替换string

此RegEx应该可以完成以下工作:

 var proxyregex=/(https?:\\/\\/[0-9,az,AZ,-,.]*)(.*)/; var targetunc="http://www.jstor.org/stable/3167630"; var pattern="$1.naomi.*universityname*.edu:2048$2"; alert(targetunc.replace(proxyregex, pattern)); 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM