Мне нужно в пустой элемент p с классом country вставить текст через js. Такой код почему то не работает:
<p class="country"></p>
var elem = document.getElementsByClassName('country');
elem.innerHTML = "USA";
document.body.appendChild(elem);
И такой тоже
var elem = document.getElementsByClassName('country');
var textElem = document.createTextNode('USA');
elem.appendChild(textElem);
Посмотрите тут. Метод getElementsByClassName возвращает как видно из названия (elements - множественное число) array-like объект, а не конкретный элемент DOM.
Как получаем доступ к элементу массива?
var elem = document.getElementsByClassName('country');
elem[0].innerHTML = "USA"
Вы обращаетесь к классу, по этому правильно будет:
elem[0].innerHTML = "text";
Ваш код будет корректно работать при обращении к id. Пример:
HTML: <p id="country"></p>
var elem = document.getElementById('country');
elem.innerHTML = "text";
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Хочу сделать условие, при котором в консоль браузера будет выводиться текст в зависимости от ориентации изображения