hzhbest
千年狐狸
千年狐狸
  • UID22640
  • 注册日期2008-01-15
  • 最后登录2017-04-06
  • 发帖数1763
  • 经验476枚
  • 威望3点
  • 贡献值414点
  • 好评度89点
  • 社区居民
  • 忠实会员
阅读:7998回复:23

【发布】【GM脚本】本论坛数楼器

楼主#
更多 发布于:2010-01-10 15:46
Firefox.net.cn 数楼器
http://userscripts.org/scripts/show/66095

脚本练习作。就是在楼层右下角显示楼层数字。
*需要先安装 GreaseMonkey 扩展。
支持 Autopagerize ;Autopager 应该支持吧。
--
更新:支持 Autopagerize !
附:Autopagerize 翻页代码【不再提供】

---
更新:把楼数放到帖子右上角。
---
更新:修正对“start”不在网址最后时不兼容的低级bug。
---
更新:支持投票帖(幸好又去那投票帖看了下)。
---
2011年11月16日更新:适应论坛的新样式。
just4fun
千年狐狸
千年狐狸
  • UID30408
  • 注册日期2009-09-17
  • 最后登录2016-04-28
  • 发帖数1497
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度2点
1楼#
发布于:2010-01-10 15:46
这个东东不错
fang5566
管理员
管理员
  • UID3719
  • 注册日期2005-03-07
  • 最后登录2024-04-29
  • 发帖数18483
  • 经验4837枚
  • 威望5点
  • 贡献值4316点
  • 好评度1116点
  • 社区居民
  • 最爱沙发
  • 忠实会员
  • 终身成就
2楼#
发布于:2010-01-10 15:46
哈哈,试了一下还行。
Firefox More than meets your experience
xxp2277
千年狐狸
千年狐狸
  • UID24388
  • 注册日期2008-05-31
  • 最后登录2024-03-28
  • 发帖数1513
  • 经验133枚
  • 威望0点
  • 贡献值46点
  • 好评度8点
  • 社区居民
3楼#
发布于:2010-01-10 15:46
试试,看看我是几楼。
kmc
kmc
管理员
管理员
  • UID165
  • 注册日期2004-11-25
  • 最后登录2022-09-22
  • 发帖数9186
  • 经验397枚
  • 威望1点
  • 贡献值124点
  • 好评度41点
  • 忠实会员
  • 终身成就
  • 社区居民
4楼#
发布于:2010-01-10 15:46
写晚啦,新论坛程序应该可以数楼了
Waterfox Current和Firefox Nightly都用,逐渐走出XUL扩展依赖
hzhbest
千年狐狸
千年狐狸
  • UID22640
  • 注册日期2008-01-15
  • 最后登录2017-04-06
  • 发帖数1763
  • 经验476枚
  • 威望3点
  • 贡献值414点
  • 好评度89点
  • 社区居民
  • 忠实会员
5楼#
发布于:2010-01-10 15:46
都说是练习作,没什么所谓。
smoke
千年狐狸
千年狐狸
  • UID3052
  • 注册日期2005-02-16
  • 最后登录2015-02-01
  • 发帖数2367
  • 经验12枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 社区居民
  • 忠实会员
6楼#
发布于:2010-01-10 15:46
能放在id和发帖时间中间吗
遇到问题请善用论坛搜索功能
hzhbest
千年狐狸
千年狐狸
  • UID22640
  • 注册日期2008-01-15
  • 最后登录2017-04-06
  • 发帖数1763
  • 经验476枚
  • 威望3点
  • 贡献值414点
  • 好评度89点
  • 社区居民
  • 忠实会员
7楼#
发布于:2010-01-10 15:46
可以,单独给你代码:
// ==UserScript==
// @name           Firefox.net.cn 数楼器
// @namespace      http://userscripts.org/users/86496
// @description    结束 www.firefox.net.cn 有楼没楼数的历史!
// @include        https://www.firefox.net.cn/forum/viewtopic.php?*
// ==/UserScript==

(function (){
var a = 0;
var a_floor = 0;
var q = document.location.search;
var qspairs = q.split('&');
	for (k = 0; k < qspairs.length; k++) {
		qvar = qspairs[k].split('=');
		if (qvar[0] == "start") {
			pre_count = Number(qvar[1]);
		}else
		{
		pre_count = 0;
		}
	}
AddCount(a);
window.addEventListener('AutoPagerize_DOMNodeInserted', function(){a++;AddCount(a);} ,false);
	
function AddCount(APpage){
	var rowsMain = document.evaluate('/html/body/div/table[' + (4+APpage) + ']/tbody/tr', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);
	var allrowcount = rowsMain.snapshotLength;
	var floorcount = (allrowcount - 3) / 4;
	if(a==0)a_floor = floorcount;
	
	for (var i=1; i <= floorcount; i++){
		tdsp = document.evaluate('/html/body/div/table[' + (4+APpage) + ']/tbody/tr['+ (i*4-1) +']/td[2]/table/tbody/tr/td[1]', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null).snapshotItem(0);
		//tdsp.innerHTML = i + pre_count + APpage*a_floor;
		addtextbefore(tdsp, i + pre_count + APpage*a_floor);
	}
}

    function addtext(obj, text) {
        var content = document.createTextNode(text);
        obj.appendChild(content)
    }
	
	function addtextbefore(obj, text) {
        var content = document.createTextNode(text);
        obj.parentNode.insertBefore(content,obj);
    }

})();
xxp2277
千年狐狸
千年狐狸
  • UID24388
  • 注册日期2008-05-31
  • 最后登录2024-03-28
  • 发帖数1513
  • 经验133枚
  • 威望0点
  • 贡献值46点
  • 好评度8点
  • 社区居民
8楼#
发布于:2010-01-10 15:46
kmc:写晚啦,新论坛程序应该可以数楼了回到原帖

啥时候上新程序?
smoke
千年狐狸
千年狐狸
  • UID3052
  • 注册日期2005-02-16
  • 最后登录2015-02-01
  • 发帖数2367
  • 经验12枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 社区居民
  • 忠实会员
9楼#
发布于:2010-01-10 15:46
hzhbest:可以,单独给你代码:
// ==UserScript==
// @name           Firefox.net.cn 数楼器
// @namespace      http://userscripts.org/users/86496
// @description    结束 www.firefox.net.cn 有楼没楼数的历史!
// @include        https://www.firefox.net.cn/forum/viewtopic.php?*
// ==/UserScript==

(function (){
var a = 0;
var a_floor = 0;
var q = document.location.search;
var qspairs = q.split('&');
	for (k = 0; k < qspairs.length; k++) {
		qvar = qspairs[k].split('=');
		if (qvar[0] == "start") {
			pre_count = Number(qvar[1]);
		}else
		{
		pre_count = 0;
		}
	}
AddCount(a);
window.addEventListener('AutoPagerize_DOMNodeInserted', function(){a++;AddCount(a);} ,false);
	
function AddCount(APpage){
	var rowsMain = document.evaluate('/html/body/div/table[' + (4+APpage) + ']/tbody/tr', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);
	var allrowcount = rowsMain.snapshotLength;
	var floorcount = (allrowcount - 3) / 4;
	if(a==0)a_floor = floorcount;
	
	for (var i=1; i <= floorcount; i++){
		tdsp = document.evaluate('/html/body/div/table[' + (4+APpage) + ']/tbody/tr['+ (i*4-1) +']/td[2]/table/tbody/tr/td[1]', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null).snapshotItem(0);
		//tdsp.innerHTML = i + pre_count + APpage*a_floor;
		addtextbefore(tdsp, i + pre_count + APpage*a_floor);
	}
}

    function addtext(obj, text) {
        var content = document.createTextNode(text);
        obj.appendChild(content)
    }
	
	function addtextbefore(obj, text) {
        var content = document.createTextNode(text);
        obj.parentNode.insertBefore(content,obj);
    }

})();
回到原帖

谢谢啦
遇到问题请善用论坛搜索功能
hitsmaxft
非常火狐
非常火狐
  • UID25803
  • 注册日期2008-08-12
  • 最后登录2024-01-13
  • 发帖数740
  • 经验13枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
10楼#
发布于:2010-01-10 15:46
那么新用户就会纳闷,怎么个个都在数楼数,明明就没有显示..

Lost in fx...
web123lai
千年狐狸
千年狐狸
  • UID8036
  • 注册日期2005-08-17
  • 最后登录2019-05-01
  • 发帖数4225
  • 经验13枚
  • 威望1点
  • 贡献值20点
  • 好评度10点
  • 社区居民
11楼#
发布于:2010-01-10 15:46
呵呵,这个不错
hzhbest
千年狐狸
千年狐狸
  • UID22640
  • 注册日期2008-01-15
  • 最后登录2017-04-06
  • 发帖数1763
  • 经验476枚
  • 威望3点
  • 贡献值414点
  • 好评度89点
  • 社区居民
  • 忠实会员
12楼#
发布于:2010-01-10 15:46
hitsmaxft:那么新用户就会纳闷,怎么个个都在数楼数,明明就没有显示..回到原帖

这个好办,让版主给我置顶就行了  
kmc
kmc
管理员
管理员
  • UID165
  • 注册日期2004-11-25
  • 最后登录2022-09-22
  • 发帖数9186
  • 经验397枚
  • 威望1点
  • 贡献值124点
  • 好评度41点
  • 忠实会员
  • 终身成就
  • 社区居民
13楼#
发布于:2010-01-10 15:46
好!置顶

不过原来我倒是发现简易的数楼法:点“打印”按钮,就有楼数的显示。
Waterfox Current和Firefox Nightly都用,逐渐走出XUL扩展依赖
vincent1417
小狐狸
小狐狸
  • UID29241
  • 注册日期2009-06-20
  • 最后登录2015-01-11
  • 发帖数26
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
14楼#
发布于:2010-01-10 15:46
果然 有效 好玩
上一页
游客

返回顶部