elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  [Pregunta]: agregar un elemento span donde se use dicha función..
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Pregunta]: agregar un elemento span donde se use dicha función..  (Leído 2,959 veces)
Leguim


Desconectado Desconectado

Mensajes: 720



Ver Perfil
[Pregunta]: agregar un elemento span donde se use dicha función..
« en: 27 Julio 2020, 23:10 pm »

Hola,

estoy intentando hacer una función con javascript que agegue/cree un elemento <span></span> en la parte donde  se uso la función... es decir...

Código
  1. function Agregar_Span()
  2. {
  3.      // [...]
  4. }
  5.  

Código
  1. <p><script>Agregar_Span();</script></p>
  2.  

Me va a quedar...

Código
  1. <p><span></span></p>
  2.  



En línea

@XSStringManolo
Hacker/Programador
Colaborador
***
Desconectado Desconectado

Mensajes: 2.399


Turn off the red ligth


Ver Perfil WWW
Re: [Pregunta]: agregar un elemento span donde se use dicha función..
« Respuesta #1 en: 28 Julio 2020, 02:52 am »

Haz un transpiler o usa templates.

O si quieres algo sencillo y rápido usa tags xD
Código
  1. <b class="AgregarSpan"></b>
  2.  
  3. <script>
  4. (function AgregarSpan() {
  5.  var spans = document.querySelectorAll("b['AgregarSpan']");
  6.  for(var i = 0; i < spans.length; ++i) {
  7.    spans[i].outterHTML = "<span></span>";
  8.  }
  9. })()
  10. </script>
  11.  

O lo que dices tú:
Código
  1. <script>AgregarSpan()</script>
  2.  
  3. <script>
  4. function AgregarSpan() {
  5.  var spans = document.querySelectorAll("script");
  6.  for(var i = 0; i < spans.length; ++i) {
  7.    if(spans[i].innerHTML == "AgregarSpan()") {
  8.      spans[i].outterHTML = "<span></span>";
  9.    }
  10.  }
  11. }
  12. </script>
  13.  


Si vas a meterle parámetros entre paréntesis usa substr();

Ej:
Código
  1. if(spans[i].innerHTML.length > 14) {
  2.  if(spans[i].innerHTML.substr(0, 12) == "AgregarSpan(" && spans[i].innerHTML.substr(0, -1) == ")" ) {
  3.    var tmp = document.createElement("span");
  4.    tmp.innerHTML = spans[i].innerHTML.substr(11, tmp.innerHTML.length - 12);
  5.    spans[i].outterHTML = tmp.outterHTML;
  6.  }
  7. }

Algo así más o menos.


« Última modificación: 28 Julio 2020, 03:07 am por @XSStringManolo » En línea

Mi perfil de patrocinadores de GitHub está activo! Puedes patrocinarme para apoyar mi trabajo de código abierto 💖

WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.605


Sin conocimiento no hay espíritu


Ver Perfil WWW
Re: [Pregunta]: agregar un elemento span donde se use dicha función..
« Respuesta #2 en: 28 Julio 2020, 03:52 am »

Pues facil,

Código:
document.write('<span>' + payload + '</span>');

Cuando llames a esa función el DOM escribirá en la misma posición desde donde es llamado, asi que si lo escribes dentro de una división entonces verás su contenido ahi mismo.

Si necesitas escribir la etiqueta de manera dinámica después de toda la carga del DOM (lo cual es lo más recomendado) debes utilizar los selectores https://developer.mozilla.org/es/docs/Web/API/Document/querySelector .

Debes recordar que agregar elementos llamando desde javascript antes de la finalización de la carga del DOM es una mala práctica debido a que el HTML debe ser totalmente independiente a la aplicación de javascript, asi que tu código debiera realmente ir a buscar cada nodo por su id y luego manipularlo a conveniencia. Si no usas ningún framework client side como ReactJS puedes usar jQuery.

Saludos.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Agregar caracter a cada elemento de un jlist
Java
marc85 1 2,960 Último mensaje 22 Noviembre 2014, 15:42 pm
por MNicolas
Agregar elemento a ComboBox
.NET (C#, VB.NET, ASP)
papydeath95 5 3,806 Último mensaje 3 Marzo 2016, 23:48 pm
por Eleкtro
MOVIDO: Agregar elemento a ComboBox
Programación Visual Basic
Eleкtro 0 1,672 Último mensaje 3 Marzo 2016, 21:57 pm
por Eleкtro
¿Agregar elemento en combinatoria ya hecha?
Programación General
Tachikomaia 0 2,335 Último mensaje 15 Abril 2020, 21:17 pm
por Tachikomaia
(Pregunta): ¿Existe este método para agregar HTML a un elemento?
Desarrollo Web
Leguim 9 5,215 Último mensaje 29 Julio 2021, 06:51 am
por 3n31ch
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines