Ваш вариант в исправленном и доработанном виде (скрещивать 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>