我以前写过一个“豆瓣只看楼主”的GM脚本,已经有比较长时间了,douban现在页面有些改动 以前使用的xpath,前几天用jquery改写了下,代码简洁了很多 如果你是firefox浏览器,并且安装了grease monkey插件 那么点击这里,就会弹出安装窗口

用于douban小组中的"只看搂主",会把楼主的帖子加边框,同时,添加快捷键n,p
“n”: 跳转到楼主下一个帖子,如果到了本页结尾,则跳回第一条
"p" 跳转到楼主下一个帖子,如果到了本页结尾,则跳回下一页

另附代码:


// ==UserScript==
// @name         douban高亮楼主
// @namespace    http://blog.notsobad.cn
// @description  实现douban小组中的"只看搂主"
// @include     http://www.douban.com/group/topic/*
// @require http://jqueryjs.googlecode.com/files/jquery-1.3.2.js
// ==/UserScript==
var log =  (unsafeWindow.console && console.log) || GM_log;
    var lz_iz, lz_url;
    var temp = /&_lz_id=([^&\/\#]+)/.exec(location.href);
    if(temp){
        lz_id = temp[1];
        lz_url = "http://www.douban.com/people/"+ lz_id + "/";
    }else{
        // First page
        lz_url = $('div.user-face:first a').attr('href');
        lz_id = lz_url.split('/people/')[1].replace('/','');
    }
    
$('.paginator a').each(function(){
    var sep = $(this).attr('href').indexOf('?') != -1 ? '&' : '?';
    $(this).attr('href') += sep + '_lz_id=' + lz_id;
});

//高亮楼主, 添加锚点
var lz_list = [];
$('.topic-reply > li').each(function(){
        //user = table.getElementsByTagName('a')[0];
        $user = $(this).find('a');
        //log("now user: " + user.href);
        if($user.attr('href') == lz_url){
            $(this).css({'border':"5px solid black", 'overflow':"scroll"});
            lz_list.push(index);
            $(this).prepend($('<a name="+index+"/>'));
        }
});
    //快捷键
    var i = 0;
    document.addEventListener('keydown', function(e){
        if(e.target.tagName == 'INPUT' || e.target.tagName == 'TEXTAREA') return;
 
        var has_more = !!lz_list && i < lz_list.length && true;
        // 'n'=>78, 'p'=>80, 'j'=>74
        if(!has_more){
            if(e.keyCode == 80) location.href = pages[pages.length-1].href;
            else if(e.keyCode == 78) i=0;
            return;
        }
        if(e.keyCode == 78 || e.keyCode == 80){
            //log('Moving next....');
            location.href = '#' + lz_list[i];
            i++;
        }
 
    },false);


log($('.user-face:first'))