// ==UserScript== // @name 显示nga头像 // @namespace http://tampermonkey.net/ // @version 0.1 // @description 在正常模式下无视内容长度显示用户头像 // @author wfel // @match *://bbs.ngacn.cc/read.php* // @match *://bbs.nga.cn/read.php* // @match *://nga.178.com/read.php* // @grant none // @downloadURL none // ==/UserScript== (function() { var ____prevChilds = document.querySelectorAll('td.c1 > span.posterinfo > div:first-child'); var ____uindex = 0; var ____uinfo = {}; var ____udata = {}; var avatarElem; function createElementFromHTML(htmlString) { var div = document.createElement('div'); div.innerHTML = htmlString.trim(); // Change this to div.childNodes to support multiple top-level nodes return div.firstChild; } // 是否显示图像由cLen(uinfo.cLength)和udata.vsmall共同控制 // cLength由contentC.innerHTML.length控制(页面未渲染前的字符数量),vsmall:屏幕大小 // 但这两个标志不知道为什似乎有bug for(var iter = 0; iter < ____prevChilds.length; ++iter) { if(____prevChilds[iter].nextElementSibling.tagName.toLowerCase() == 'img') { console.log(`next of ${iter} is img`); continue; } console.log(`find ${iter}`); ____uindex = parseInt(____prevChilds[iter].parentNode.id.toString().slice(10), 10); ____udata = commonui.postArg.data[____uindex]; ____uinfo = commonui.userInfo.users[____udata.pAid]; console.log('avatar is ' + ____uinfo.avatar); avatarElem = commonui.posterInfo.avatar(____uindex, 2, ____uinfo.avatar, ____uinfo.buffs, ____udata ? ____udata.atItem :null, ____udata.pAid); //console.log('elem is ' + avatarElem); if(avatarElem) ____prevChilds[iter].parentNode.insertBefore(createElementFromHTML(avatarElem), ____prevChilds[iter].nextSibling); } })();