Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name Slashdot Fixer
- // @namespace http://your.homepage/
- // @version 0.1
- // @description Fix the comments links!
- // @author You
- // @match http://slashdot.org/*
- // @match http://slashdot.org/?source=autorefresh
- // @grant none
- // ==/UserScript==
- function hasClass(docElement, matchClass)
- {
- return ((' ' + docElement.className + ' ').indexOf(' ' + matchClass + ' ') > -1)
- }
- function getElementByTagAndClass(docElement, tagName, matchClass)
- {
- var elements = docElement.getElementsByTagName(tagName), i;
- for( i in elements )
- {
- if ( hasClass(elements[i], matchClass ))
- {
- return elements[i];
- }
- }
- return null;
- }
- function fixArticle(docElement, index, ar)
- {
- if ( hasClass(docElement, "fhitem"))
- {
- var contentElement = getElementByTagAndClass(docElement, "span","comment-bubble");
- if ( contentElement != null )
- {
- var replaceElement = getElementByTagAndClass(docElement, "div","popularity");
- if ( replaceElement != null )
- {
- var contentLink = contentElement.firstElementChild.cloneNode(true);
- contentLink.textContent = contentLink.textContent+" comments";
- // var contentLink = contentElement.innerHTML;
- console.log("Article: "+docElement.id+" -> "+contentLink.outerHTML);
- replaceElement.innerHTML = contentLink.outerHTML;
- }
- }
- }
- }
- var articles = document.getElementsByTagName("article");
- var inputList = Array.prototype.slice.call(articles);
- console.log(inputList.length);
- inputList.forEach(fixArticle);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement