我的 Chrome extensions 之 淘宝手机站助手

在比较早的时候,淘宝手机站在电脑上打开是没有链接跳转到PC站的,而手机站显示的内容又有限。看个商品大图很是蛋疼,于是这个手机站助手就出来了。
功能很简单,就是当浏览器访问*.m.taobao.com*的任何一个链接时,自动跳转到相应的PC站。

比如说,当你访问http://h5.m.taobao.com/awp/core/detail.htm?id=**********时,自动打开新的标签访问这个链接对应的http://item.taobao.com/item.htm?id=**********

实现方式很简单

先配置好extensions的manifest信息

manifest里面的各个参数可以参照Google给出的文档,还提供了各种示例  查看示例 只要你了解JS的语法。照着这些例子,基本上都能做出来自己想要的extensions

{
	"name": "taobao helper",
	"manifest_version":2,
	"icons": 
	{ 
		"16": "icon.png",             
		"48": "icon.png",            
		"128": "icon.png"
	},  
	"version": "1.0",
	"description": "Auto jump m.taobao.com to taobao.com",
	"background": { "scripts": ["background.js"] },
	"browser_action" :
	{ 
		"default_icon" : "icon.png",
		"default_title" : "taobao helper"
	},
	"permissions" : [
		"tabs"
	]
}
再编写background.js的内容

我这里添加了限制,只有在taobao.com下才对插件进行打开关闭操作。当插件关闭时,打开手机站是不会自动跳转到PC站。


var cookieName = "taobaoconvert_chromeplugs";


function setIco(tab) {
    if (tab.url.indexOf("taobao.com") >= 0) {
        //cheack cookie
        if (getCookie(cookieName) == null) {
            chrome.browserAction.setIcon({ path: "icon.png" });
        } else {
            chrome.browserAction.setIcon({ path: "icon_2.png" });
        }


    } else {
        chrome.browserAction.disable(tab.id);
    }
}




function jump(tab) {
    if (getCookie(cookieName) != null) {
        return;
    }
    if (tab.url.indexOf(".m.taobao.com") >= 0) {
        var id = getQueryStringByName(tab.url, "id");
        chrome.tabs.create({ url: "http://item.taobao.com/item.htm?id=" + id, selected: true });
        chrome.tabs.remove(tab.id);
    } else if (tab.url.indexOf(".m.tmall.com") >= 0) {
        var id = new RegExp(/i([0-9]+)/g).exec(tab.url)[1];
        chrome.tabs.create({ url: "http://detail.tmall.com/item.htm?id=" + id, selected: true });
        chrome.tabs.remove(tab.id);
    }


}


chrome.tabs.onUpdated.addListener(function (tabId, changeInfo, tab) {
    if (changeInfo.status == "loading") {
        jump(tab);
        setIco(tab);
    }


});


chrome.browserAction.onClicked.addListener(function (tab) {
    if (getCookie(cookieName) == null) {
        SetCookie(cookieName, cookieName);
    } else {


        delCookie(cookieName);
    }
    jump(tab);
    setIco(tab);
});




function getQueryStringByName(url, name) {
    var result = url.match(new RegExp("[\?\&]" + name + "=([^\&]+)", "i"));
    if (result == null || result.length < 1) {
        return "";
    }
    return result[1];
}




function SetCookie(name, value) {
    var Days = 30;
    var exp = new Date();
    exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000);
    document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString();
}
function getCookie(name) {
    var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));
    if (arr != null)
        return unescape(arr[2]);
    return null;


}
function delCookie(name) {
    var exp = new Date();
    exp.setTime(exp.getTime() - 1);
    var cval = getCookie(name);
    if (cval != null) document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString();
}

然后打包重新安装打包好的文件到你的 extensions


下载请移步  下载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值