使用文本框更改链接颜色并使用Cookie保存

时间:2011-07-25 10:09:31

标签: jquery cookies google-chrome-extension

我正在尝试开发一个谷歌浏览器扩展程序以更改链接颜色(在vbulletin论坛上:链接是论坛第一页上的在线用户)。我添加一个链接来保存cookie和一个文本框:但是当我添加一个用户链接时,它是正常的,因为链接的颜色发生了变化,然后当我点击“保存”链接时,所有链接都会改变颜色(而不是只有一个)如果我重新加载页面没有保存任何内容。我能怎么做?

// ==UserScript== 
// @name change online user links color 
// @namespace http://www.site.com 
// @description change link color 
// @include http://www.site.com/forum/index.php 
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js 
// @require http://www.site.com/jquery.cookie.js 
// ==/UserScript== 


function stilz(css) {
    var head, style;
    head = document.getElementsByTagName('head')[0];
    if (!head) {
        return;
    }
    style = document.createElement('style');
    style.type = 'text/css';
    style.innerHTML = css;
    head.appendChild(style);
}
stilz('.green {' + 'color: green ! important;' + '}');

$(document).ready(function () {

    // append a textbox and a link to save 
    $('.wgo_block .section:first-child .blocksubhead').append('<a class="save" href="#">&nbsp;Save&nbsp;</a><br /><input id="textbox" name="textbox" value="" />');

    $('#textbox').keypress(function (event) {
        if (event.which == '13') {
            event.preventDefault();
            $(".commalist li a.username").filter('a[href$="' + $(this).val() + '"]').addClass("green");
        }
    });

    $("a.save").click(function (event) {
        event.preventDefault();
        $(".commalist li a.username").filter('a[href$="' + $(this).val() + '"]').addClass("green");
        $.cookie("linkstosave", "green", {
            path: '/'
        });
    });

    var rememberme = $.cookie("linkstosave");
    if (rememberme == "green") {
        $(".linkstochange").filter('a[href$="' + $(this).val() + '"]').addClass("green");
    };
});

0 个答案:

没有答案