Javascript 恢复旧的facebook照片查看器-Chrome扩展
如果你注意到,facebook有一个新的照片查看器。。。事实上,要替换原来的照片查看器,您只需删除URL中的“&theater”选项并重新加载网页。 我想通过chrome扩展自动完成这项工作。 我已经获得了检索URL的代码:Javascript 恢复旧的facebook照片查看器-Chrome扩展,javascript,html,facebook,google-chrome,Javascript,Html,Facebook,Google Chrome,如果你注意到,facebook有一个新的照片查看器。。。事实上,要替换原来的照片查看器,您只需删除URL中的“&theater”选项并重新加载网页。 我想通过chrome扩展自动完成这项工作。 我已经获得了检索URL的代码: <html> <head> <script> window.addEventListener("load", windowLoaded, false); function windowLoaded() { chrome.tabs.ge
<html>
<head>
<script>
window.addEventListener("load", windowLoaded, false);
function windowLoaded() {
chrome.tabs.getSelected(null, function(tab) {
document.getElementById('currentlink').innerHTML = tab.url;
});
}
</script></head>
<body>
<p id="currentlink">Loading ...</p>
</body>
</html>
addEventListener(“加载”,windowLoaded,false);
函数windowLoaded(){
chrome.tabs.getSelected(空,函数(选项卡){
document.getElementById('currentlink').innerHTML=tab.url;
});
}
正在加载
我无法从字符串中删除“&theater”,然后用新编辑的URL重新加载(没有&theater)
提前感谢。我为此做了一个修改:(函数来自)如下,与您之前的操作相同,只是它将除剧院外的所有变量粘贴回URL。从那里,你可以用URL做你想做的事情。如果tab.url==新的url,则不应重新加载页面,也不应重新加载任何需要扩展名执行的操作
<html>
<head>
<script>
function getUrlVars(url) {
var vars = [],
hash;
//get URL variables
var hashes = url.slice(url.indexOf('?') + 1).split('&');
//get domain
var domain = url.split("?")[0];
for (var i = 0; i < hashes.length; i++) {
//separate variable and parameter
hash = hashes[i].split('=');
//get everything but theater
if (hash[0] !== "theater") {
vars.push(hash[0]);
var index = vars.indexOf(hash[0]);
vars[index] = hash[0]+"="+hash[1];
}
}
//mash it all back together
return domain+"?"+vars.join("?");
}
window.addEventListener("load", windowLoaded, false);
function windowLoaded() {
chrome.tabs.getSelected(null, function(tab) {
document.getElementById('currentlink').innerHTML = getUrlVars(tab.url);
if(tab.url === getUrlVars(tab.url)) {
//do nothing
} else {
//do something
}
});
}
</script></head>
<body>
<p id="currentlink">Loading ...</p>
</body>
</html>
函数getUrlVars(url){
var vars=[],
搞砸
//获取URL变量
var hashes=url.slice(url.indexOf('?'))+1.split('&');
//获取域
var domain=url.split(“?”[0];
for(var i=0;i正在加载