Я создал элемент div с именем main-middle-column-container
в моем HTML и присвоил ему стиль CSS. По сути, main-middle-column-container
создаст окно сообщения, похожее на твиттер, которое будет содержать имя, дату / время и сообщение.
Я хочу повторно использовать main-middle-column-container
и весь код внутри него с jQuery, чтобы при поступлении новых данных он использовал fre sh main-middle-column-container
в качестве шаблона для добавления в новые значения (например, как будет работать твиттер). Когда поступают новые данные, @username
, date/time
и This is a random message. #random
будут заменены входящими данными или оставят элементы пустыми, а новые данные заполнят их.
Я думал об использовании $('.main-middle-column-container').clone().appendTo('.main-middle-column-wrapper');
но это приведет к двойному клонированию (1 блок -> 2 блока -> 4 блока -> 8 блоков ...) вместо клонирования один раз. У меня также есть проблема избавления от main-middle-column-container
до того, как я получу какие-либо данные, потому что я не хочу пустое поле на веб-сайте, который я пытаюсь создать. Я хочу, чтобы main-middle-column-container
создавалось именно тогда, когда я получаю какие-то данные / сообщения.
CSS и HTML (окно сообщения)
.main-middle-column-wrapper{
display: flex;
flex-direction: column;
width: 49%;
}
.main-middle-column-container{
width: 100%;
}
.main-middle-column{
font-family: "Helvetica Neue", Helvetica, Arial ,sans-serif;
font-size: 14px;
height: auto;
width: 100%;
background-color: white;
padding: 9px 12px;
z-index: -2;
box-shadow: 0 0 2px 0 lightgray;
position: relative;
}
.main-middle-column:hover{
background-color: hsl(200, 23%, 96%);
}
.tweet-pic-wrapper{
position: absolute;
top: 5px;
}
.tweet-pic-container{
position: relative;
height: 48px;
width: 48px;
border: 3px solid transparent;
border-radius: 100%;
overflow: hidden;
z-index: 1;
display: inline-block;
}
.tweet-pic{
position: absolute;
margin: 0 auto;
height: 100%;
left: -6px;
width: auto;
}
.title-account-time{
margin-left: 55px;
}
.msg-title{
font-weight: bold;
}
.msg-acc-name{
color: #657786;
}
.msg-acc-name:hover{
cursor: pointer;
}
.msg-date{
color: #657786;
margin-top: 1px;
}
.tweet-msg{
margin-left: 55px;
margin-top: 5px;
}
<div class="main-middle-column-wrapper">
<div class="main-middle-column-container">
<div class="main-middle-column">
<div class="tweet-pic-wrapper">
<div class="tweet-pic-container">
<img src="Picture of the Moon.jpeg" class="tweet-pic" alt="Picture of the moon.">
</div>
</div>
<div class="title-account-time">
<span class="msg-title">My Twitter</span>
<span class="msg-acc-name">@username</span>
<div class="msg-date">date/time</div>
</div>
<div class="tweet-msg">
This is a random message. #random
</div>
</div>
</div>
</div>