Я пытаюсь выполнить действие, когда пользователь нажимает кнопку (необходим прослушиватель событий, потому что https://webkit.org/blog/6784/new-video-policies-for-ios/), но я предполагаю, что у меня есть некоторая синтаксическая / логическая ошибка. Некоторая помощь была бы хороша: D.

Вот код:

HTML:

   <a-image id="playbutton_1" position="-5 0 0" width="2" height="2" rotation="0 -90 0" ></a-image>

JS:

var playthisvid_1 = document.querySelector('#playbutton_1');

    playthisvid_1.addEventListener('click', () => { console.log("it clicks");  })
0
Delidragon 20 Авг 2018 в 11:25

3 ответа

Лучший ответ

Элементы Aframe не будут просто реагировать на события касания / мыши. Вам нужен курсор ray.

Хороший способ симулировать мышь - использовать атрибут cursor s:

<a-scene cursor="rayOrigin: mouse">

Он также должен работать с сенсорными событиями на мобильных устройствах.

Проверьте это здесь.


В противном случае используйте курсор в виде рамки.

<a-cursor></a-cursor>
1
Erik Minarini 2 Сен 2019 в 09:57

Я думаю, что проблема с рамой. Код JavaScript работает отлично. Я просто заменил элемент рамки на обычную кнопку, и функция работает.

var playthisvid_1 = document.querySelector('#playbutton_1');

    playthisvid_1.addEventListener('click', () => { console.log("it clicks");  })
<a id="playbutton_1" href="#">Test</a>

Может быть, это может решить вашу проблему? AFrame: как добавить прослушиватель сенсорного события в сущность

1
Muhammad Osama 20 Авг 2018 в 08:49

Проверьте это для полного примера:

https://curious-electric.com/w/experiments/aframe/audiosprite/

Это аудио пример, но тот же метод применяется для видео (то есть, чтобы пользователь сначала нажал кнопку).

Бест, Дирк

0
dirkk0 20 Авг 2018 в 08:55
51926738