Аватар для skapunker
-30 / 25 / 12
Регистрация: 13.12.2013
Сообщений: 1,465

Как заменить ссылку на poster у тега video через JS?

28.12.2019, 14:08. Показов 2926. Ответов 10
Метки html5, js (Все метки)

Студворк — интернет-сервис помощи студентам
Специалисты! Нужна ваша помощь, помогите пожалуйста.

Нужно заменить ссылку у атрибута poster тега video с классом .my-guest. Причем тег video то появляется на странице, то исчезает. В целом это выглядит так:

HTML5
1
<video class="my-guest" preload="auto" poster="https://mysite/myimg.svg"></video>
Нужно его как то сходу на лету заменить на мою картинку.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.12.2019, 14:08
Ответы с готовыми решениями:

Как указать poster для тега video через css?
Всем привет! Подскажите пожалуйсто, можно ли указать poster для тега video через css? либо как то скрыть его или убрать?

Масштабирование тега video
Есть видео &lt;video src=&quot;/upload/video/34.mp4&quot; controls&gt;Тег video не поддерживается вашим браузером.&lt;/video&gt; если ему задать...

Стилизация кнопки тега video для воспроизведения
можно ли сделать в html5 в тэгах video, такую кнопочку как в youtube посередине видео, для воспроизведения и паузы?

10
566 / 465 / 183
Регистрация: 14.10.2017
Сообщений: 1,259
28.12.2019, 15:50
JavaScript
1
document.querySelector('.my-guest').setAttribute('poster', 'https://mysite/myimg.svg');
0
 Аватар для skapunker
-30 / 25 / 12
Регистрация: 13.12.2013
Сообщений: 1,465
28.12.2019, 18:30  [ТС]
Цитата Сообщение от klopp Посмотреть сообщение
document.querySelector('.my-guest').setAttribute('poster', 'https://mysite/myimg.svg');
не прокатывает((((

Хочу обратить внимание, что тега video изначально на странице нет, он то появляется то исчезает в зависимости от того, куда нажимает пользователь.
0
566 / 465 / 183
Регистрация: 14.10.2017
Сообщений: 1,259
28.12.2019, 20:28
JavaScript
1
document.querySelector('куда должен нажать пользователь чтобы появился тег video').addEventListener('click', () => document.querySelector('.my-guest').setAttribute('poster', 'https://mysite/myimg.svg'));
функцию возможно придется вызывать с какой-то задержкой, х.з. как у вас там происходит всё
0
380 / 230 / 115
Регистрация: 22.11.2016
Сообщений: 379
28.12.2019, 21:17
Лучший ответ Сообщение было отмечено skapunker как решение

Решение

JavaScript
1
2
3
4
5
6
7
8
9
10
11
let observer = new MutationObserver(() => {
    let el = document.querySelector(".my-guest");
    if (!el) return false;
    el.setAttribute("poster", "https://mysite/myimg.svg");
});
observer.observe(document.body, { childList: true,  subtree: true });
document.querySelector(".btn").addEventListener("click", () => {
    let video = document.createElement("video");
    video.classList.add("my-guest");
    document.body.append(video);
});
1
 Аватар для skapunker
-30 / 25 / 12
Регистрация: 13.12.2013
Сообщений: 1,465
29.12.2019, 09:31  [ТС]
fixeri, а в вашем скрипте .btn это что такое?
0
380 / 230 / 115
Регистрация: 22.11.2016
Сообщений: 379
29.12.2019, 11:40
HTML5
1
<div class="btn">Button</div>
0
 Аватар для skapunker
-30 / 25 / 12
Регистрация: 13.12.2013
Сообщений: 1,465
29.12.2019, 11:41  [ТС]
Цитата Сообщение от fixeri Посмотреть сообщение
HTML5
1
<div class="btn">Button</div>
я имел ввиду сюда надо нажать, чтобы постер начал меняться?
0
380 / 230 / 115
Регистрация: 22.11.2016
Сообщений: 379
29.12.2019, 11:46
Это имитация появления вашего
HTML5
1
<video class="my-guest" preload="auto" poster="https://mysite/myimg.svg"></video>
при добавлении/изменении body - срабатывает

JavaScript
1
2
3
let el = document.querySelector(".my-guest");
    if (!el) return false;
    el.setAttribute("poster", "https://mysite/myimg.svg");
1
 Аватар для skapunker
-30 / 25 / 12
Регистрация: 13.12.2013
Сообщений: 1,465
29.12.2019, 14:29  [ТС]
fixeri, а не подскажете, как полностью удалить в нашем случае атрибут poster?
0
380 / 230 / 115
Регистрация: 22.11.2016
Сообщений: 379
29.12.2019, 14:41
JavaScript
1
2
3
4
let el = document.querySelector(".my-guest");
    if (!el) return false;
    el.removeAttribute("poster");
    //el.setAttribute("poster", "https://mysite/myimg.svg");
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.12.2019, 14:41
Помогаю со студенческими работами здесь

Автоплей видео из тега Video при прокрутке
Здравствуйте. Пытался гуглить но ничего дельного не нашел. Есть такой код &lt;section class=&quot;features&quot;&gt; &lt;h2...

Кроссбраузерное подключение видео на страницу с помощью тега <video>
Привет ещё раз. Сделал LP. Видеофон не во всех браузерах работает, как сделать что бы работало везде? &lt;!doctype html&gt; ...

Как заменить 2 тега, между которыми переменные
Как заменить это: &lt;iframe /&gt; На это: &lt;iframe &gt;&lt;/iframe&gt; Заранее спасибо.

HTML <video> </video>, как проигрывать видео с компьютера?
У меня такая проблема: Делал html страницу, поставил тег &lt;video&gt; как надо, но браузер не показывает mp4 файл. &lt;html&gt; ...

Получить ссылку из HTML тега
&lt;h3 class=&quot;r&quot;&gt;&lt;a href=&quot;http://www.symantec.com/connect/forums/right-click-menu-add&quot; onmousedown=&quot;return...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru