Created
November 14, 2018 10:44
-
-
Save yitsushi/03385d71e9ccbf5600a01429b1d0f426 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Single-Click Version: | |
// 1. Create a bookmark with: | |
javascript:document.body.addEventListener("click",function(t){for(var e=window.getSelection(),n=e.getRangeAt(0),o=e.anchorNode;0!=n.toString().indexOf(" ");)n.setStart(o,n.startOffset-1);n.setStart(o,n.startOffset+1);do{n.setEnd(o,n.endOffset+1)}while(-1==n.toString().indexOf(" ")&&""!=n.toString().trim()&&n.endOffset<o.length);n.toString().trim();e.focusNode.nodeValue=e.focusNode.nodeValue.replace(n.toString().trim(),"***")}); | |
// 2. Place your bookmark on your bookmarks bar | |
// 3. Push the button when you want to censor your name / anything else | |
// 4. Click on the word you want to hide | |
// Double-Click Version: | |
javascript:document.body.addEventListener("dblclick",function(t){for(var e=window.getSelection(),n=e.getRangeAt(0),o=e.anchorNode;0!=n.toString().indexOf(" ");)n.setStart(o,n.startOffset-1);n.setStart(o,n.startOffset+1);do{n.setEnd(o,n.endOffset+1)}while(-1==n.toString().indexOf(" ")&&""!=n.toString().trim()&&n.endOffset<o.length);n.toString().trim();e.focusNode.nodeValue=e.focusNode.nodeValue.replace(n.toString().trim(),"***")}); | |
// Non-minified version (so you can be sure it's not malicious): | |
// You can minify it for youself if you want ;) | |
// Or change the mask... or basically anything as you want. | |
document.body.addEventListener('click', function(e) { | |
var s = window.getSelection(); | |
var range = s.getRangeAt(0); | |
var node = s.anchorNode; | |
while (range.toString().indexOf(' ') != 0) { | |
range.setStart(node, (range.startOffset - 1)); | |
} | |
range.setStart(node, range.startOffset + 1); | |
do { | |
range.setEnd(node, range.endOffset + 1); | |
} while (range.toString().indexOf(' ') == -1 && range.toString().trim() != '' && range.endOffset < node.length); | |
var str = range.toString().trim(); | |
s.focusNode.nodeValue = s.focusNode.nodeValue.replace(range.toString().trim(), '***'); | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment