点击 ooxx 前隐藏当前 post 的 ooxx,目前只支持主楼,不支持吐槽
// ==UserScript== // @name 拒绝跟风,理性思考 // @namespace http://tampermonkey.net/ // @version 0.5 // @description 点击 ooxx 前隐藏当前 post 的 ooxx,目前只支持主楼,不支持吐槽 // @author native // @match http://jandan.net/* // @match https://jandan.net/* // @grant GM_setValue // @grant GM_getValue // ==/UserScript== (function() { $(document).ready(function(){ if($(".commentlist").length == 0){ return; } var allPost = $(".commentlist")[0]; for(cur = allPost.firstElementChild; cur != null; cur = cur.nextElementSibling){ if(cur.id.startsWith("comment-")){ var likeSpan = cur.querySelector("div > div > div.jandan-vote > span.tucao-like-container > span"); var unLikeSpan = cur.querySelector("div > div > div.jandan-vote > span.tucao-unlike-container > span"); if(likeSpan == null){ likeSpan = cur.querySelector("div > div > div.jandan-vote > span:nth-child(2)"); } if(unLikeSpan == null){ unLikeSpan = cur.querySelector("div > div > div.jandan-vote > span:nth-child(4)"); } var commentOoxxEle = { 'id': cur.id, 'oo': parseInt(likeSpan.innerText), 'xx': parseInt(unLikeSpan.innerText) }; GM_setValue(cur.id, commentOoxxEle); likeSpan.innerText = "..."; unLikeSpan.innerText = "..."; } } ooxx_action = function xxx(c, e){ var d = c.data("id"); var b = c.data("type"); var a = c.data("is_loading"); var isClickOo = c[0].className == "comment-like like"; if (a === true) { jandan_show_msg("数据加载中...请不要重复操作"); return } c.data("is_loading", true); $.ajax({ headers: { "Request-Uri": window.location.href }, type: "POST", dataType: "json", url: "/api/comment/vote", data: { comment_id: d, like_type: b, data_type: e }, success: function(i) { c.data("is_loading", false); if (i.error != 0) { jandan_show_msg(i.msg); // add code to show current ooxx showOoxx(c, isClickOo, false); return } var f = { obj: c, str: "+ 1", startSize: "12px", endSize: "30px", interval: 800, color: "#cd4450", weight: "bold" }; f.color = "#00f"; if (b === "pos") { f.color = "#f00" } $("body").append('<span class="plus-num" id="plus-' + d + '">' + f.str + "</span>"); var h = $("#plus-" + d); var k = f.obj.offset().left; var j = f.obj.offset().top - f.obj.height() + 5; h.css({ position: "absolute", left: k + "px", top: j + "px", "z-index": 9999, "font-size": f.startSize, "line-height": f.endSize, color: f.color, "font-weight": f.weight }); var g = c.next("span"); // add code to show current ooxx showOoxx(c, isClickOo, true); h.velocity({ opacity: "0", top: (j - 20) + "px" }, f.interval, function() { h.remove() }) }, error: function() { c.data("is_loading", false) // add code to show current ooxx showOoxx(c, isClickOo, false); } }) }; function getCommentIdFormC(c){ var cur = c[0].parentElement; while(!cur.id.startsWith("comment-")){ cur = cur.parentElement; } return cur.id; } function getJandanVoteEleFormC(c){ var cur = c[0].parentElement; while(cur.className != "jandan-vote"){ cur = cur.parentElement; } return cur; } function showOoxx(c, isClickOo, success){ if(c[0].className.indexOf("tucao") >= 0){ return; } var commentId = getCommentIdFormC(c); var ooxx = GM_getValue(commentId); var addend = success ? 1 : 0; isClickOo ? ooxx["oo"] += addend: ooxx["xx"] += addend; GM_setValue(commentId, ooxx); var jandanVoteEle = getJandanVoteEleFormC(c); var likeEle = jandanVoteEle.querySelector("span.tucao-like-container > span"); var unLikeEle = jandanVoteEle.querySelector("span.tucao-unlike-container > span"); if(likeEle == null){ likeEle = jandanVoteEle.querySelector("span:nth-child(2)"); unLikeEle = jandanVoteEle.querySelector("span:nth-child(4)"); } likeEle.innerText = ooxx["oo"]; unLikeEle.innerText = ooxx["xx"]; } }); })();