Scrambler

scrambles all the text on a page

目前為 2016-08-07 提交的版本,檢視 最新版本

// ==UserScript==
// @name         Scrambler
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  scrambles all the text on a page
// @author       abbott
// @match        *://*/*
// ==/UserScript==

window.onload = function() {
  var elements = document.body.getElementsByTagName('*');

  for (var i = 0; i < elements.length; i++) {
    var text = '';
    elements[i].innerHTML.split(/(<.+?>)/).forEach(function(s) {
      text += s.charAt(0) === '<' ? s : scramble(s);
    });

    elements[i].innerHTML = text;
  }
};

function scramble(s) { // scrambles middle letters 
  var scrambled = '';

  if (s.includes('&nbsp;')) { // ignores nbsp messes up the scramble a bunch
    return s;
  }

  s.split(' ').map(function(word) {
    if (word.length > 3) {
      var chars = word.split('');

      for (var i = 1; i < chars.length - 1; i++) {
        var j = Math.floor(Math.random() * (i - 1) + 1);
        var temp = chars[i];
        chars[i] = chars[j];
        chars[j] = temp;
      }

      scrambled += chars.join('') + ' ';
    } else {
      scrambled += word + ' ';
    }
  });

  return scrambled.slice(0, -1);
}

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址