Вывод текста js в html
У меня есть код в js, который получает дату, но мне нужно сделать так, чтобы эта дата выводилась на страницу, с сохранением всего форматирования в css
Year = Data.getFullYear();
Month = Data.getMonth();
Day = Data.getDate();
switch (Month) {
case 0: fMonth="января"; break;
case 1: fMonth="февраля"; break;
case 2: fMonth="марта"; break;
case 3: fMonth="апреля"; break;
case 4: fMonth="мае"; break;
case 5: fMonth="июня"; break;
case 6: fMonth="июля"; break;
case 7: fMonth="августа"; break;
case 8: fMonth="сентября"; break;
case 9: fMonth="октября"; break;
case 10: fMonth="ноября"; break;
case 11: fMonth="декабря"; break;
}
var today = "Сегодня " + Day + " " + fMonth + " " + Year + " года"
document.getElementById('dataclass').insertAdjacentHTML(today)
CSS:
font-family: 'Arial Black', sans-serif;
width: 170px;
color: rgba(0, 0, 0, .3);
margin-left: 20%;
margin-top: -9.7%;
transition: all .7s ease-in;
}
HTML:
<div class="dataclass"><h4 class = "data">data</h4></div>
Ответы (3 шт):
Автор решения: Алексей Шиманский
→ Ссылка
Ошибка #1: В js пытаешься вставить элемент с идентификатором, а в html у тебя элемент с классом
Ошибка #2: если посмотреть документацию внимательно, то метод insertAdjacentHTML требует ДВА аргумента, а не один. Первый из них - позиция вставки
<!-- beforebegin -->
<p>
<!-- afterbegin -->
foo
<!-- beforeend -->
</p>
<!-- afterend -->
а вот только вторым - элемент для вставки
Автор решения: puffleeck
→ Ссылка
почти все замеченные ошибки и правки пометил комментом.
var preMonth = [
"января",
"февраля",
"марта",
"апреля",
"мае",
"июня",
"июля",
"августа",
"сентября",
"октября",
"ноября",
"декабря"
];
var preWd = ["вс", "пн", "вт", "ср", "чт", "пт", "сб"];
var d = new Date(); /* !!!!! нет объекта - нет методов */
var Year = d.getFullYear(); /*!!!*/
var Month = preMonth[d.getMonth()]; /*!!!*/
var Day = d.getDate(); /*!!!*/
var wd = preWd[d.getDay()];
var today = "Сегодня " + wd + ", " + Day + " " + Month + " " + Year + " года "; /*!!!*/
document.getElementById('x').innerHTML = today; /*!!!*/
#x{ /* !!!!! */
font-family: 'Arial Black', sans-serif;
width: 170px;
color: rgba(0, 0, 0, .3);
margin-left: 20%;
/* margin-top: -9.7%; */
transition: all .7s ease-in;
}
<div class="dataclass"><h4 id='x' class="data">data</h4></div>
Автор решения: Andrei
→ Ссылка
Можно вот так ка вариант:
const date = new Date();
const Year = date.getFullYear();
const Month = date.getMonth();
const Day = date.getDate();
const fMonth = [
"января",
"февраля",
"марта",
"апреля",
"мае",
"июня",
"июля",
"августа",
"сентября",
"октября",
"ноября",
"декабря"
];
let today = `Сегодня ${Day} ${fMonth[Month]} ${Year} года`;
document.getElementById('data').append(today);
body {
display: grid;
justify-content: center;
align-content: center;
}
.dataclass {
font-family: 'Arial Black', sans-serif;
width: 170px;
color: rgba(0, 0, 0, .3);
margin-left: 20%;
margin-top: -9.7%;
transition: all .7s ease-in;
}
<div class="dataclass">
<h4 class="data" id="data"></h4>
</div>