JavaScript - Un div superior a otro.

 
Vista:

Un div superior a otro.

Publicado por Julian (9 intervenciones) el 21/11/2017 00:21:06
Qué tal espero que estén bien.
Tengo un problema. Me mandaron a hacer en el curso de programación web, la interfaz de twitter y su principal característica: el timeline.
Mi contenedor está compuesto por un input text y un botón.
Al presionar el botón se ejecuta una función, en ella se crea un div y varios datos dentro.
¿Qué pasa? cuando voy a tuitear por segunda vez, el tuit más reciente, se pone debajo del viejo, en vez de ponerse arriba. Por lo cual, está ordenado de abajo para arriba. Y yo quiero que esté de arriba para abajo.
Acá se puede ver lo que sucede.
https://imgur.com/a/oCoKP
Mi código JS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
var id=0;
var ida=2;
function vatuitear(){
if (id<=ida) {
 
var nuevodiv=document.createElement("div"); //creamos un div, usando createElement.
var contenidoU=document.createElement("h2"); //acá lo mismo, pero éste llamara al usuario.
var contenidoA=document.createElement("h5"); //éste llamara al arroba.
var hora=document.createElement("span");
var descripcion=document.createElement("p"); // y éste llamar a la descripcion
 
var btncomenta=document.createElement("span");
var btnrt=document.createElement("span");
var btnfav=document.createElement("span");
 
	nuevodiv.appendChild(contenidoU); //acá hacemos que el divisor tome y se adueñe del contenidoU
	nuevodiv.appendChild(contenidoA); //acá igual, pero éste tomará al contenidoA.
	nuevodiv.appendChild(descripcion); // y acá tomará la descripción
	nuevodiv.appendChild(hora);// y acá tomará la hora
	nuevodiv.appendChild(btncomenta); // y acá tomará la descripción
	nuevodiv.appendChild(btnrt); // y acá tomará la descripción
	nuevodiv.appendChild(btnfav); // y acá tomará la descripción
 
	var viejo = document.getElementById("noticias"); //decimos que la variable "viejo" equivale al div ya creado, con el id NOTICIAS
	var diome= document.getElementById("medio"); // y acá la variable "diome" llamará al div "MEDIO"
	diome.insertBefore(nuevodiv, viejo); //acá hacemos que dentro del "diome" se inserte el nuevo div, dentro del viejo. o sea el que creamos dentro del "noticias"
	contenidoU.innerHTML=miusuario[0]; //acá contenidoU tendrá un valor de texto de el array "miusuario" en el lugar 1.
	contenidoA.innerHTML=miusuario[1]; //acá lo mismo pero contenidoA va a tomar el valor del array "miusuario" en el lugar 0.
	descripcion.innerHTML= document.getElementById("cajatexto").value; //acá, el elemento "descripcion" tendrá un valo rde texto de lo que vale la "cajatexto", es decir, lo que pongamos que querramos twittear aparecerá.
	document.getElementById("cajatexto").value=""; //ahora la caja de texto no tiene ningun valor; por lo tanto está vacía.
	document.getElementById("cajatexto").style.height="32px"; //la caja aumentará su alto a 60px.
	document.getElementById("espacio").style.height="54px"; //el espacio contenedor a 120pixeles.
	document.getElementById("botones").style.visibility="hidden"; // y el boton "twittear" desaparecerá
	/* ACA ARRANCAMOS A DARLE ESTILO A LOS ELEMENTOS, ATENTOS*/
	var s=1;
	var m=0;
setInterval(function(){
	hora.innerHTML=s + "seg";
	s++;
	if (s==60) {
		m++;
		hora.innerHTML= m+"min"+s+"seg";
	}
},1000)
	document.getElementById("noticias").style.display="flex";
	document.getElementById("noticias").style.flexDirection = "row-reverse";
	btncomenta.innerHTML="Responder";
	btnrt.innerHTML="Retwittear";
	btnfav.innerHTML="Favear";
		hora.className="tiempo";
	var conjuntos= [btncomenta, btnrt, btnfav];
	for (var i=0; i<conjuntos.length; i++){
	conjuntos[i].className="classbotones";
		nuevodiv.className = "class-noti";
		contenidoA.className="class-arroba";
		descripcion.className="class-descripcion";
	nuevodiv.style.zIndex = id;
}
	}
	ida+=2;
	id++;
 
	}
Intenté con display:flex; y flex-direction: column-reverse; y no funcionó.
Por si no me expliqué bien (nunca lo hago), quiero que el ultimo tuit que tire, esté encima del antiguo, y no abajo.
Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Un div superior a otro.

Publicado por xve (2100 intervenciones) el 21/11/2017 08:15:15
Hola Julian, ese problema esta en los estilos... te recomiendo que abras el inspector de elementos (F12) y ahi revises los estilos para ver por que razón sucede.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Un div superior a otro.

Publicado por Julián (9 intervenciones) el 22/11/2017 23:41:14
Hola, no me sirvió lo que me planteas... Igualmente gracias y a la espera de otra persona! Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar