Показать сообщение отдельно
  #19 (permalink)  
Старый 22.01.2016, 17:40
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

Ваш вариант в исправленном и доработанном виде (скрещивать svg со skrollr - все равно, что ужа и ежа)
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>SVG</title>
  <style type="text/css">
    body {
      height: 2000px;
    }
    .anim-1 {
      stroke-dasharray: 1000;
      stroke-dashoffset: 1000;
      animation: dash 2.5s linear alternate forwards;
    }
    @keyframes dash {
      0% {
        stroke-dashoffset: 1000;
      }
      90% {
        fill-opacity: 0;
      }
      100% {
        stroke-dashoffset: 0;
        fill-opacity: 1;
      }
    }
  </style>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  <script type="text/javascript">
      var svgHTML = '<svg width="450px" height="160px"><text id="svgText" class="anim-1" x="0" y="158px" font-size="200px" stroke="#222121" stroke-width="1" fill-opacity="0">WEB</text></svg>';
      var countbox = "#svgBlock";
      var show = true;
      $(window).on("scroll load resize", function () {
          var w_top = $(window).scrollTop(); // Количество пикселей на которое была прокручена страница
          var e_top = $(countbox).offset().top; // Расстояние от блока со счетчиками до верха всего документа
          var w_height = $(window).height(); // Высота окна браузера
          var d_height = $(document).height(); // Высота всего документа
          var e_height = $(countbox).outerHeight(); // Полная высота блока со счетчиками

          if ((w_top + w_height) > e_top && w_top < (e_top + e_height)) {
              if (show) {
                  $(countbox).html(svgHTML);
                  show = false;
              }
          } else {
              show = true;
              $(countbox).html("");
          }
      });

  </script>
</head>
<body>
  <div style="height:1000px;"></div>
    <div id="svgBlock">
    </div>
   <div style="height:1000px;"></div>
</body>
</html>

Последний раз редактировалось Dilettante_Pro, 25.01.2016 в 10:17.
Ответить с цитированием