Advertisement
MizunoBrasil

Gerador de Código com botão Copiar

Oct 2nd, 2024
43
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 3.96 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html lang="pt-BR">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6.     <title>Gerar Código Dinamicamente com Copiar</title>
  7.     <style>
  8.         body {
  9.             font-family: Arial, sans-serif;
  10.             background-color: #f9f9f9;
  11.             margin: 0;
  12.             padding: 0;
  13.             display: flex;
  14.             justify-content: center;
  15.             align-items: center;
  16.             min-height: 100vh;
  17.         }
  18.  
  19.         .container {
  20.             background-color: #fff;
  21.             padding: 20px;
  22.             border-radius: 10px;
  23.             box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  24.             max-width: 90%;
  25.             text-align: center;
  26.         }
  27.  
  28.         textarea {
  29.             width: 100%;
  30.             height: 150px;
  31.             padding: 10px;
  32.             margin-bottom: 20px;
  33.             font-family: 'Courier New', Courier, monospace;
  34.             font-size: 14px;
  35.         }
  36.  
  37.         button {
  38.             padding: 10px 20px;
  39.             font-size: 16px;
  40.             background-color: #007bff;
  41.             color: white;
  42.             border: none;
  43.             border-radius: 5px;
  44.             cursor: pointer;
  45.         }
  46.  
  47.         button:hover {
  48.             background-color: #0056b3;
  49.         }
  50.  
  51.         .generated-code {
  52.             margin-top: 20px;
  53.             padding: 20px;
  54.             background-color: #f5f5f5;
  55.             border-left: 5px solid #007bff;
  56.             white-space: pre-wrap;
  57.             word-wrap: break-word;
  58.             font-family: 'Courier New', Courier, monospace;
  59.             color: #d63384;
  60.             font-size: 14px;
  61.             text-align: left;
  62.         }
  63.  
  64.         #copyButton {
  65.             margin-top: 10px;
  66.             display: none;
  67.         }
  68.     </style>
  69. </head>
  70. <body>
  71.  
  72.     <div class="container">
  73.         <h1>Insira o texto para gerar código</h1>
  74.         <textarea id="userInput" placeholder="Digite seu código ou texto aqui..."></textarea>
  75.         <button onclick="generateCode()">Gerar Código</button>
  76.  
  77.         <div id="output" class="generated-code" style="display:none;">
  78.             <!-- O código gerado será inserido aqui -->
  79.         </div>
  80.  
  81.         <button id="copyButton" onclick="copyCode()">Copiar Código</button>
  82.     </div>
  83.  
  84.     <script>
  85.         function generateCode() {
  86.             // Obtém o texto da área de texto
  87.             const userInput = document.getElementById('userInput').value;
  88.  
  89.             if (userInput.trim() === "") {
  90.                 alert('Por favor, insira algum texto para gerar o código.');
  91.                 return;
  92.             }
  93.  
  94.             // Gera o conteúdo da tag <code> dinamicamente
  95.             const codeBlock = `
  96. <code>
  97. ${userInput}
  98. </code>
  99.             `;
  100.  
  101.             // Insere o código gerado no elemento output
  102.             const outputDiv = document.getElementById('output');
  103.             outputDiv.textContent = codeBlock;
  104.             outputDiv.style.display = "block";
  105.  
  106.             // Exibe o botão de copiar
  107.             document.getElementById('copyButton').style.display = "inline-block";
  108.         }
  109.  
  110.         function copyCode() {
  111.             // Seleciona o conteúdo dentro do elemento gerado
  112.             const codeContent = document.getElementById('output').textContent;
  113.  
  114.             // Cria um elemento temporário para selecionar o texto
  115.             const tempTextArea = document.createElement('textarea');
  116.             tempTextArea.value = codeContent;
  117.             document.body.appendChild(tempTextArea);
  118.  
  119.             // Seleciona o conteúdo e copia para a área de transferência
  120.             tempTextArea.select();
  121.             document.execCommand('copy');
  122.  
  123.             // Remove o elemento temporário
  124.             document.body.removeChild(tempTextArea);
  125.  
  126.             // Alerta o usuário que o texto foi copiado
  127.             alert('Código copiado para a área de transferência!');
  128.         }
  129.     </script>
  130.  
  131. </body>
  132. </html>
  133.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement