A-Frame Animation не запускается при передаче события

1

Я пытаюсь анимировать плоскость в A-кадре с a-animation компонента a-animation или компонента aframe-animation после того, как пользователь нажимает на текстовое поле. Я хочу повернуть плоскость в вертикальное положение, чтобы пользователь упал. Анимация работает без прослушивателя событий, но она не срабатывает, когда я добавляю startEvents или begin атрибуты в a-entity содержащий плоскость. Событие, называемое fallclick, испускается из текстового a-entity называемого fallSelector когда он fallSelector.

Вот раздел моего кода HTML:

<a-entity 
                static-body
                id="plane" 
                rotation="-90 0 0" 
                geometry="primitive: plane; width: 2; height: 2" 
<!--            animation="property: rotation; to: 0 0 0; delay: 500; startEvents: fallclick;" -->
                >
        <a-animation attribute="rotation" to="0 0 0" delay="500" dur="1000" begin="fallclick" ></a-animation>
</a-entity>

Вот код события JavaScript:

fallSelector.addEventListener('click', function () {
            fallSelector.emit('fallclick');
            console.log(fallSelector + ': Emit fallclick');
});
Теги:
animation
aframe

1 ответ

0
Лучший ответ

1) для компонента <a-animation>, вам нужно передать событие в примитиве анимации:

<a-animation id="my-animation" begin="foo"></a-animation>
<!-- js: my-animation.emit("foo") --!>

2) для компонента анимации вам нужно передать событие на объект, содержащий анимацию

<a-entity id="bar" animation="startEvents: foo"></a-entity>
<!-- js: bar.emit("foo") --!>

живая сцена здесь

  • 0
    Понял! Спасибо, Петр.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню