我正在尝试开发一个谷歌浏览器扩展程序以更改链接颜色(在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="#"> Save </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");
};
});