// ==UserScript== // @name View Source HTML Mobile // @namespace http://linkme.bio/jhonpergon/?userscript=console_mobile_view // @version 0.1 // @description View Source simples para visualização e edição do DOM no celular. // @author Jhon Pérgon // @match *://*/* // @grant none // @license MIT // @downloadURL none // ==/UserScript== var body = `
fechar
    ...
`; function show(elem) { elem.style.display = "block"; elem.style.x = all.x; elem.style.y = all.y + 20; elem.textContent = ""; } function hide(elem) { elem.style.display = ""; elem.textContent = all.id + all.style + all.tagName; } var all = document.querySelector("*"); var devconsole = document.createElement('div'); devconsole.id = "devconsole"; devconsole.style.position = "absolute"; devconsole.style.width = "100%"; devconsole.style.height = "322px"; devconsole.style.bottom = "0px"; devconsole.style.background = "grey"; devconsole.style.zIndex = "3000"; devconsole.innerHTML = body; var opendev = document.createElement('button'); opendev.style.position = "fixed"; opendev.style.right = "0"; opendev.style.bottom = "0"; opendev.style.zIndex = "3000"; opendev.id = "opendev"; opendev.innerHTML = "View Source"; var closeButton = document.createElement('span'); closeButton.style.position = "absolute"; closeButton.style.top = "-2px"; closeButton.style.left = "-30px"; closeButton.style.cursor = "pointer"; closeButton.innerHTML = "X"; closeButton.style.background = "black"; closeButton.style.color = "#fff"; closeButton.style.padding = "3px 9px"; opendev.appendChild(closeButton); opendev.addEventListener("click", function() { document.body.appendChild(devconsole); var documentelements = document.getElementById('documentelements'); documentelements.textContent = document.documentElement.outerHTML.replace(/</g, "<").replace(/>/g, ">").replace(/>\n<"); // Adiciona quebra de linha após cada tag documentelements.addEventListener("dblclick", function() { if (documentelements.contentEditable != "true") { documentelements.contentEditable = "true"; } else { documentelements.contentEditable = "false"; } }); document.getElementById("edit_on_or_off").addEventListener("click", function() { if (document.body.contentEditable !== "true" && document.body.designMode !== "on") { console.log("Editing elements: true"); document.body.contentEditable = "true"; document.body.designMode = "on"; alert("Modo edição HTML ativo. Clique em qualquer texto para editá-lo."); document.getElementById('devconsole').remove(); } else { alert("Modo edição desabilitado."); console.log("Editing elements: false"); document.body.contentEditable = "false"; document.body.designMode = "off"; window.location.reload(); } }); document.getElementById("findelements").addEventListener("click", function() { document.addEventListener("mousemove", function awesome(e) { if (e.target.tagName != "") { e.target.title = e.target.tagName.toLowerCase(); } if (e.target.id != "") { e.target.title += "#" + e.target.id; } if (e.target.className != "") { e.target.title += "." + e.target.className; } }); }); }); closeButton.addEventListener("click", function() { opendev.style.display = "none"; }); document.body.appendChild(opendev);