JSFiddle - React, Tailwind, and code Playground

by Darby Rathbone

HTML

<a href="javascript:
(function(){
var saveAs = saveAs  || (navigator.msSaveBlob && navigator.msSaveBlob.bind(navigator))  || (function(view) {
  'use strict';
  var
      doc = view.document
      // only get URL when necessary in case BlobBuilder.js hasn't overridden it yet
    , get_URL = function() {
      return view.URL || view.webkitURL || view;
    }
    , URL = view.URL || view.webkitURL || view
    , save_link = doc.createElementNS('http://www.w3.org/1999/xhtml', 'a')
    , can_use_save_link = 'download' in save_link
    , click = function(node) {
      var event = doc.createEvent('MouseEvents');
      event.initMouseEvent(
        'click', true, false, view, 0, 0, 0, 0, 0
        , false, false, false, false, 0, null
      );
      node.dispatchEvent(event);
    }
    , webkit_req_fs = view.webkitRequestFileSystem
    , req_fs = view.requestFileSystem || webkit_req_fs || view.mozRequestFileSystem
    , throw_outside = function (ex) {
      (view.setImmediate || view.setTimeout)(function() {
        throw ex;
      }, 0);
    }
    , force_saveable_type = 'application/octet-stream'
    , fs_min_size = 0
    , deletion_queue = []
    , process_deletion_queue = function() {
      var i = deletion_queue.length;
      while (i--) {
        var file = deletion_queue[i];
        if (typeof file === 'string') { // file is an object URL
          URL.revokeObjectURL(file);
        } else { // file is a File
          file.remove();
        }
      }
      deletion_queue.length = 0; // clear queue
    }
    , dispatch = function(filesaver, event_types, event) {
      event_types = [].concat(event_types);
      var i = event_types.length;
      while (i--) {
        var listener = filesaver['on' + event_types[i]];
        if (typeof listener === 'function') {
          try {
            listener.call(filesaver, event || filesaver);
          } catch (ex) {
            throw_outside(ex);
          }
        }
      }
    }
    , FileSaver = function(blob, name) {
 ...

JavaScript

javascript:
javascript:(function(){})();
javascript: var timer = setInterval(function () {
    window.scrollTo(0, parseInt(getComputedStyle(document.body).height))
}, 200);
setTimeout(function () {
    clearInterval(timer);
    var arr = [];
    arr.push(((document.getElementById('pagelet_ego_pane').textContent.indexOf('Sponsored') !== -1) ? document.getElementById('pagelet_ego_pane').innerHTML : ''));
    [].forEach.call(document.getElementsByClassName('userContentWrapper'), function (e) {
        if (e.textContent.indexOf('Pages You May~ Like') !== -1 || e.textContent.indexOf('Suggested') !== -1 || e.textContent.indexOf('Sponsored') !== -1) arr.push(e.innerHTML);
        
    });
    var blob = new Blob(arr, {type: 'text/html'});
    location = window.URL.createObjectURL(blob);
}, 3000);