jQuery событие загрузки для элемента не работает - PullRequest
0 голосов
/ 17 февраля 2020

Я знаю, что мы можем выбрать item, используя Jquery следующим образом:

 var item = $('[aria-label="rect"] svg');

Не знаю, почему я не могу обнаружить, если item имеет был загружен с использованием этого:

 setInterval(function(){ 

      item.load(function() {
      console.log('item has been loaded!');
      });
      // or this one:
      item.on("load", function() {
      console.log('item has been loaded!');
      })

  }, 100);

Примечание: я могу анимировать элемент одновременно, я уверен, что мой селектор работает нормально:

var item = $('[aria-label="rect"] svg');
item.animate({'top': '-=50px'},'slow');  // Animation works fine

  setInterval(function(){ 

      item.load(function() {
      // Handler for .load() called.
      console.log('item has been loaded!');
      });

      item.on("load", function() {
      console.log('item has been loaded!');
      })

  }, 100);

Оригинал проблема:

Я использую Articulate Storyline для создания простой страницы. На странице есть прямоугольник, который анимируется справа налево, сразу после того, как пользователь заходит на страницу. Я заметил, что в медленных соединениях анимация прямоугольника не воспроизводится или воспроизводится с середины анимации при первом запуске страницы. после кэширования страницы пользователи никогда не сталкиваются с этой проблемой, только в первый раз. Теперь я думаю, что одним из решений является запуск анимации, только если мы уверены, что прямоугольник был загружен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...