Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

454
Visualizações
Poner un texto en negrita usando DOM Events

ahora estoy aprendiendo JavaScript y, para practicar, estoy tratando de hacer un editor de texto. Donde puede escribir algo, haga clic en un botón y hágalo en mayúsculas o minúsculas, negrita y talic. Funcionó con mayúsculas y minúsculas, pero por alguna razón no funciona con negrita.

Aquí está mi HTML:

 <h1 id="text">Escreva seu texto abaixo</h1> <div id="container"> <input type="text" id="type"> </div> <main> <ul> <li class="buttons"> <button id="button1">A</button> </li> <li class="buttons"> <button id="button2">a</button> </li> <li class="buttons"> <button id="button3">B</button> </li> <li class="buttons"> <button id="button4">I</button> </li> </ul> </main>

Y aquí está el guión:

 > let text = document.getElementById("text") > let input = document.getElementById("type") > let button1 = document.getElementById("button1") > let button2 = document.getElementById("button2") > let button3 = document.getElementById("button3") > let button4 = document.getElementById("button4") > let value1 = document.getElementById("type").value > > > button1.onclick = uppercase > button2.onclick = lowercase > button3.onclick = bold > button4.onclick = italic > > function uppercase(){ > text.innerHTML = value1.toUpperCase() > } > > function lowercase (){ > text.innerText = input.value.toLowerCase() > } > > function bold(){ > text.innerText = input.value.style.fontWeight="bold"; > }

El texto que se cambiará será el h1, en la parte superior del HTML. Además, escribí

let valor = documento.getElementById("tipo").valor

para ahorrarme algo de tiempo, pero cuando hago clic en el botón 1 (en mayúsculas), el texto simplemente desaparece. El button2, con input.value funcionó bien. Entonces, ¿por qué var value1 hace que el texto desaparezca y por qué no puedo poner el texto en negrita?

¡Gracias!

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

El problema es que está cambiando el valor de input.value a negrita. No puede input.value de entrada, debe cambiar directamente el estilo de input .

Además, no puede usar input.value = no es una función integrada como toUpperCase , es estilo.

Use input.value.style.fontWeight puede funcionar, pero debe volver a aplicarlo y hacer clic en otro elemento que está desordenado. La forma más fácil es <b> para que no tenga que preocuparse por volver a cambiarlo.

Además, tengo un problema que debo mencionar, debe declarar el valor de entrada dentro de la función, lo declara al principio, que siempre estará vacío ya que asigna el valor al cargar la página.

 let text = document.getElementById("text") let input = document.getElementById("type") let button1 = document.getElementById("button1") let button2 = document.getElementById("button2") let button3 = document.getElementById("button3") let button4 = document.getElementById("button4") button1.onclick = uppercase button2.onclick = lowercase button3.onclick = bold //button4.onclick = italic function uppercase() { let value1 = document.getElementById("type").value text.innerHTML = value1.toUpperCase() } function lowercase() { text.innerText = input.value.toLowerCase() } function bold() { text.innerHTML = '<b>'+input.value+'</b>' }
 <p id="text">Escreva seu texto abaixo</p> <div id="container"> <input type="text" id="type"> </div> <main> <ul> <li class="buttons"> <button id="button1">A</button> </li> <li class="buttons"> <button id="button2">a</button> </li> <li class="buttons"> <button id="button3">B</button> </li> <li class="buttons"> <button id="button4">I</button> </li> </ul> </main>

over 4 years ago · Santiago Trujillo Relatório

0

necesita dar CSS al objeto, no al texto algo como esto:

 input.style.fontWeight="bold";
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda