1.新标签页打开3dm论坛帖子 2.自动在回帖输入框中随机添加回帖内容
// ==UserScript==
// @name 新标签页打开3dm论坛帖子,自动添加回帖内容
// @namespace http://tampermonkey.net/
// @version 0.5
// @description 1.新标签页打开3dm论坛帖子 2.自动在回帖输入框中随机添加回帖内容
// @author MWY 3376766578
// @match *://bbs.3dmgame.com/forum*.html
// @match *://bbs.3dmgame.com/forum.php?mod=forumdisplay&*&filter=*
// @match *://bbs.3dmgame.com/forum.php?mod=post&action=reply&*
// @match *://bbs.3dmgame.com/thread*.html
// @icon https://www.3dmgame.com/index/images/logo_xiaoniao.png
// @grant none
// ==/UserScript==
(function() {
'use strict';
//alert(window.location.pathname);
function GetQueryString(name){
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if(r!=null)return unescape(r[2]); return null;
}
var textReply = new Array("666,感谢楼主分享!{:3_110:}","大佬厉害了哇。{:3_110:}","回复支持一下。{:3_110:}","哈哈,这个不错!谢谢大佬!{:3_110:}");
var x = Math.floor(Math.random()*4);
if(GetQueryString("action") == "reply"){
var textContatiner = document.getElementById('e_iframe').contentWindow.document.getElementById('editorheader').nextSibling;
if(textContatiner != null){
textContatiner.innerHTML = textReply[x];
}
}else if(window.location.pathname.indexOf("thread-") != -1){
document.getElementById('fastpostmessage').innerHTML = textReply[x];
}else{
modfiyTargetScript();
}
function modfiyTargetScript(){
function getList(){
return document.getElementById('threadlisttableid').getElementsByClassName('s xst');
}
var as = getList();
function modfiyA(as){
for(var i=0;i<=as.length-1;i++){
//console.log("第"+i+"次循环");
//console.log(as[i]);
as[i].onclick = null;
as[i].target = '_blank';
};
}
if(as.length > 0){
modfiyA(as);
}
var totals = as.length;
function checkList(){
var c = getList();
if(totals != c.length){
console.log("刷新了,快看看数据吧!!!!!!!!");
modfiyA(as);
totals = c.length;
}else{
console.log("无数据变化");
}
}
var autopbn = $('autopbn');
var nextpageurl = autopbn.getAttribute('rel').valueOf();
var curpage = parseInt(autopbn.getAttribute('curpage').valueOf());
var totalpage = parseInt(autopbn.getAttribute('totalpage').valueOf());
var picstyle = parseInt(autopbn.getAttribute('picstyle').valueOf());
var forumdefstyle = parseInt(autopbn.getAttribute('forumdefstyle').valueOf());
picstyle = picstyle && !forumdefstyle;
var autopagenum = 0;
var maxpage = (curpage + autopagenum) > totalpage ? totalpage: (curpage + autopagenum);
var loadstatus = 0;
autopbn.onclick = function() {
var oldloadstatus = loadstatus;
loadstatus = 2;
autopbn.innerHTML = '正在加载, 请稍后...';
getnextpagecontent();
loadstatus = oldloadstatus;
};
if (autopagenum > 0) {
window.onscroll = function() {
var curtop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
if (curtop + document.documentElement.clientHeight + 500 >= document.documentElement.scrollHeight && !loadstatus) {
loadstatus = 1;
autopbn.innerHTML = '正在加载, 请稍后...';
setTimeout(getnextpagecontent, 1000);
}
};
}
function getnextpagecontent() {
if (curpage + 1 > totalpage) {
window.onscroll = null;
autopbn.style.display = 'none';
return;
}
if (loadstatus != 2 && curpage + 1 > maxpage) {
autopbn.innerHTML = '下一页 »';
if (curpage + 1 > maxpage) {
window.onscroll = null;
}
return;
}
curpage++;
var url = nextpageurl + '&t=' + parseInt(( + new Date() / 1000) / (Math.random() * 1000));
var x = new Ajax('HTML');
x.get(url,
function(s) {
s = s.replace(/\n|\r/g, '');
if (s.indexOf("id=\"autopbn\"") == -1) {
$("autopbn").style.display = "none";
window.onscroll = null;
}
if (!picstyle) {
var tableobj = $('threadlisttableid');
var nexts = s.match(/\<tbody id="normalthread_(\d+)"\>(.+?)\<\/tbody>/g);
for (i in nexts) {
if (i == 'index' || i == 'lastIndex') {
continue;
}
var insertid = nexts[i].match(/<tbody id="normalthread_(\d+)"\>/);
if (!$('normalthread_' + insertid[1])) {
var newbody = document.createElement('tbody');
tableobj.appendChild(newbody);
var div = document.createElement('div');
div.innerHTML = '<table>' + nexts[i] + '</table>';
tableobj.replaceChild(div.childNodes[0].childNodes[0], tableobj.lastChild);
}
}
} else {
var nexts2 = s.match(/\<li style="width:\d+px;" id="picstylethread_(\d+)"\>(.+?)\<\/li\>/g);
for (i in nexts2) {
var insertid2 = nexts2[i].match(/id="picstylethread_(\d+)"\>/);
if (!$('picstylethread_' + insertid2[1])) {
$('threadlist_picstyle').innerHTML += nexts2[i];
}
}
}
var pageinfo = s.match(/\<span id="fd_page_bottom"\>(.+?)\<\/span\>/);
nextpageurl = nextpageurl.replace(/&page=\d+/, '&page=' + (curpage + 1));
$('fd_page_bottom').innerHTML = pageinfo[1];
if (curpage + 1 > totalpage) {
autopbn.style.display = 'none';
} else {
autopbn.innerHTML = '下一页 »';
}
loadstatus = 0;
checkList();
});
}
}
})();