说明和添加手机贴吧脚本
This commit is contained in:
parent
fe54438c25
commit
f8de1cc545
|
@ -19,6 +19,7 @@ fork自 https://github.com/barrer/tampermonkey-script 修改的,并参考了 h
|
|||
* 只调用沪江小D查询日语,可以点击语音按钮发音
|
||||
* 默认是日中查询,没有结果时自动使用中日查询,日中查询有结果有添加主动中日查询的按钮
|
||||
* 有多个意思和发音时,可以点击切换
|
||||
* 可以选中段落朗读,不过要先安装tts语音,windows10在语音中添加日语即可,macOS类似,linux不知道怎么安装tts
|
||||
* 支持浏览器:Google Chrome、Firefox、Safari、Firefox for Android(无拖动)
|
||||
* 支持图标拖动
|
||||
* 支持面板自动调整位置
|
||||
|
|
194
tieba page.js
Normal file
194
tieba page.js
Normal file
|
@ -0,0 +1,194 @@
|
|||
// ==UserScript==
|
||||
// @name tieba page
|
||||
// @namespace http://tampermonkey.net/
|
||||
// @version 0.4
|
||||
// @author fthvgb1
|
||||
// @match https?://tieba.baidu.com/*
|
||||
// @grant unsafeWindow
|
||||
// @description 显示手机版贴吧里被隐藏的楼层与翻页按钮
|
||||
// ==/UserScript==
|
||||
|
||||
|
||||
function t() {
|
||||
lz();
|
||||
$("ul#pblist>li").forEach(function (e) {
|
||||
f(e);
|
||||
var ee = $(e);
|
||||
var tid = ee.attr("tid");
|
||||
var content = ee.find(".list_item_top");
|
||||
var x = ee.find('.list_item_top a.j_report_btn');
|
||||
if (x && x.length > 0) {
|
||||
var kz = x[0].href.match(/tid=(\d+)\&/);
|
||||
kz = kz[1];
|
||||
}
|
||||
|
||||
var floor = e.getElementsByClassName('pb_floow_load');
|
||||
if (floor.length > 0) {
|
||||
var text = floor[0].textContent;
|
||||
var url = `https://tieba.baidu.com/t/p/${tid}`;
|
||||
var num = parseInt(text.match(/\d+/));
|
||||
content.append(`<div style="text-align:center;background-color: #eee;margin: 8px 0 0 42px;"><a style="padding:12px;display:block;" href="javascript:void(0)" data-url="${url}" class="reply">查看剩余` + num + `条回复</a></div>`);
|
||||
var res = content.find('a.reply');
|
||||
var orgnum = num;
|
||||
//console.log(content,res);
|
||||
if (res) {
|
||||
res.forEach(function (v, i) {
|
||||
var page = 2;
|
||||
v.addEventListener('click', function () {
|
||||
var that = this;
|
||||
|
||||
if (num === orgnum) {
|
||||
var url = this.getAttribute('data-url');
|
||||
//console.log();
|
||||
$.get(url, function (rst) {
|
||||
var dom = (new DOMParser()).parseFromString(rst, 'text/html');
|
||||
var r = dom.querySelector('.j_floor_panel');
|
||||
var lii = r.querySelectorAll('li');
|
||||
lii.forEach(function (li, index) {
|
||||
//console.log(li.className)
|
||||
if (index < 2) {
|
||||
return;
|
||||
}
|
||||
|
||||
var username = li.querySelector('.left>div .user_name').outerHTML;
|
||||
username = username.replace('</a>', ':</a>');
|
||||
var s = li.querySelector('.content span');
|
||||
s.className = 'floor_content';
|
||||
var c = li.querySelector('.content').innerHTML;
|
||||
var div = `
|
||||
<div class="fmain j_floor_main">
|
||||
<div class="floor_footer_item">
|
||||
${username}
|
||||
${c}
|
||||
</div>
|
||||
</div>`;
|
||||
li.innerHTML = div;
|
||||
var ll = document.createElement('li');
|
||||
ll.classList.add('list_item_floor');
|
||||
ll.classList.add('j_list_item_floor');
|
||||
ll.innerHTML = div;
|
||||
//console.log(content.find('.flist'))
|
||||
content.find('.flist')[0].appendChild(ll)
|
||||
|
||||
});
|
||||
if (num <= 8) {
|
||||
that.parentNode.removeChild(that);
|
||||
} else {
|
||||
num -= 8;
|
||||
that.innerText = `查看剩余${num}条回复`;
|
||||
}
|
||||
});
|
||||
} else {
|
||||
var url = `https://tieba.baidu.com/mo/q//flr?fpn=${page}&kz=${kz}&pid=${tid}&is_ajax=1&has_url_param=0&template=lzl`;
|
||||
$.get(url, function (res) {
|
||||
var ht = (new DOMParser()).parseFromString(res.data.floor_html, 'text/html');
|
||||
var lii = ht.querySelectorAll('li');
|
||||
lii.forEach(function (li, index) {
|
||||
var username = li.querySelector('.left>div .user_name').outerHTML;
|
||||
username = username.replace('</a>', ':</a>');
|
||||
var s = li.querySelector('.content span');
|
||||
s.className = 'floor_content';
|
||||
var c = li.querySelector('.content').innerHTML;
|
||||
var div = `
|
||||
<div class="fmain j_floor_main">
|
||||
<div class="floor_footer_item">
|
||||
${username}
|
||||
${c}
|
||||
</div>
|
||||
</div>`;
|
||||
li.innerHTML = div;
|
||||
var ll = document.createElement('li');
|
||||
ll.classList.add('list_item_floor');
|
||||
ll.classList.add('j_list_item_floor');
|
||||
ll.innerHTML = div;
|
||||
//console.log(content.find('.flist'))
|
||||
content.find('.flist')[0].appendChild(ll)
|
||||
|
||||
});
|
||||
++page;
|
||||
if (num > 10) {
|
||||
num -= 10;
|
||||
that.innerText = `查看剩余${num}条回复`;
|
||||
} else {
|
||||
that.parentNode.removeChild(that);
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
})
|
||||
})
|
||||
}
|
||||
floor[0].parentNode.removeChild(floor[0])
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
function lz() {
|
||||
let lz = document.querySelector('span.poster_only');
|
||||
if (lz) {
|
||||
lz.onclick = null;
|
||||
let h = location.href;
|
||||
let ff = 0;
|
||||
if (h.indexOf('see_lz=1') > -1) {
|
||||
lz.textContent = '取消只看楼主';
|
||||
h = h.replace('see_lz=1', 'see_lz=0')
|
||||
ff = 1;
|
||||
}
|
||||
lz.addEventListener('click', evt => {
|
||||
|
||||
if (ff === 0) {
|
||||
h = h.indexOf('?') < 0 ? h + '?see_lz=1' : h + '&see_lz=1';
|
||||
}
|
||||
location.href = h;
|
||||
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function f(value) {
|
||||
var dt = JSON.parse(value.getAttribute('data-info'));
|
||||
if (dt) {
|
||||
var fl = dt.floor_num;
|
||||
var l = document.createElement('span');
|
||||
l.style.color = 'green';
|
||||
l.textContent = fl + '楼';
|
||||
if (fl === 1) {
|
||||
l.textContent = '楼主';
|
||||
} else if (fl === 2) {
|
||||
l.textContent = '沙发';
|
||||
} else if (fl === 3) {
|
||||
l.textContent = '地板';
|
||||
}
|
||||
value.querySelector('.list_item_time').parentNode.appendChild(l);
|
||||
}
|
||||
}
|
||||
|
||||
(function () {
|
||||
document.querySelectorAll('ul#pblist>li').forEach(value => {
|
||||
if (value.classList.contains('class_hide_flag')) {
|
||||
value.classList.remove('class_hide_flag');
|
||||
}
|
||||
|
||||
});
|
||||
t();
|
||||
|
||||
[
|
||||
'.img_desc', '.father-cut-recommend-normal-box', '.father-cut-daoliu-normal-box',
|
||||
'#diversBanner', '.footer_logo', '.j_footer_link'
|
||||
].forEach(value => {
|
||||
let x = document.querySelector(value);
|
||||
if (x) {
|
||||
x.parentNode.removeChild(x)
|
||||
}
|
||||
});
|
||||
|
||||
document.querySelector('.father-cut-pager-class-no-page').classList.remove('father-cut-pager-class-no-page');
|
||||
|
||||
|
||||
$("#list_pager>a").on("click", function () {
|
||||
setTimeout(t, 3000);
|
||||
});
|
||||
|
||||
|
||||
})();
|
Loading…
Reference in New Issue
Block a user