Как скрыть объект aframe, используя localStorage и атрибут «visible»? - PullRequest
0 голосов
/ 21 ноября 2018

Я хотел бы скрыть объект aframe, используя localStorage, который вызывается в HTML-коде, манипулируя атрибутом visible.

Я просматривал другие статьи, например Как я могускрыть элемент с помощью A-Frame?

, но он не работает для меня.

Вот мой код:

  <a-obj-model
  visible = "localStorage.getItem('carVisibility')";
   id="carA"  src="#car_obj" mtl="#car_mtl" position="1 1 7" rotation="0 0 0"></a-obj-model>

Мой carVisibility localStorage isустановить как «ложь» и «истина», в зависимости от ввода пользователя.Если я заменю часть localStorage на «visible = false;»это работает отлично.Однако, как только я добавляю часть localStorage, кажется, что она не подключается и не работает.Ясно, что это синтаксическая ошибка, однако я не уверен, что с ней не так?

Ответы [ 3 ]

0 голосов
/ 21 ноября 2018

Попробуйте,

$(document).ready(function(){
    $('#carA').attr('visible', localStorage.getItem('carVisibility'));
});
0 голосов
/ 21 ноября 2018

visible: ... ожидает значение true или false.Вы не можете разместить там код js, например visible="1 === 2".Пример здесь .

Вы должны поместить свою логику в компонент aframe:

AFRAME.registerComponent("foo", {
  init: function() {
    // provided carVisibility is true or false
    this.el.setAttribute("visible", localStorage.getItem('carVisibility'))
  }
}

и использовать его следующим образом

<a-entity foo></a-entity>

Рабочий пример здесь .Установите localStorage на true или false, запустите и перезапустите скрипку (чтобы убедиться, что локальное хранилище установлено).

0 голосов
/ 21 ноября 2018

Вы уверены, что значение = "localStorage ............" не обрабатывается как строка?

...