大家好,当我滚动到div并且h2的内容必须像打字机一样逐字加载时,我试图加载我的h2文本。我试过这种方式,但它不起作用。你们有什么想法吗?
$(window).scroll( function(){
$('.inner h2').each(function (i){
var header = $(this);
var header_content = header.html();
var content = new Array();
content[i] = header_content;
position = new Array();
position[i] = $(this).position().top;
console.log(content[i]+' pos '+position);
var bottom_of_window = $(window).scrollTop() + $(window).height();
if( bottom_of_window > position[i] ){
var arrayTitle = content[i].split('');
var i = 0;
var interval = setInterval(function(){
if (i > arrayTitle.length)
{
header.html(content[i]); // wipe out the <span> tags
clearInterval(interval);
}
else
{
$('<span>')
.html(arrayTitle[i])
.appendTo(header)
.hide()
.fadeIn(50);
i++;
}
}, 50);
}
});
});
答案 0 :(得分:1)
这是我的看法:http://jsfiddle.net/Sladkoff/73TDB/
我把scroll事件处理程序放在每个函数中。 这样,每个元素都有自己的实例&#39;变量和处理程序。 它需要更多的调整,但也许这将有助于你作为基础。
这对我来说没什么意义:
我没有追加跨度,因为我从你的描述/代码中并没有真正理解你究竟用它来实现什么。
如果这不是你想要的,那么至少我清理了一下:)
// I would have just left a comment if I could.