CSS Animation 为这个问题提供了一个更通用的解决方案。适用于所有主要浏览器(有一些警告......)
这是和示例,基于我认为您要实现的目标...
http://jsfiddle.net/adrianjmartin/xLpft/
<style>
.redacted {
background-color:black;
color:black;
}
@keyframes unredact{
to{
background-color:white;
}
}
@-webkit-keyframes unredact{
to{
background-color:white;
}
}
</style>
<script>
window.addEventListener( "load" , function(){
var p = document.querySelectorAll("P");
for( var ii = 0 ; ii < p.length ; ii++ ){
var t = p[ii].textContent;
var a = t.split( ' ' );
var h = "";
for( var i = 0 ; i < a.length ; i++ ){
h += "<span class='redacted'>"+a[i]+" </span>";
}
p[ii].innerHTML = h ;
}
});
window.addEventListener( "click" , function(){
var spans = document.querySelectorAll( "P span.redacted");
for( var i = 0; i < spans.length ; i++ ){
var delay = Math.random(3);
var delay = Math.random(3);
var style = "-webkit-animation: unredact forwards 3s " + delay + "s;";
style += "animation: unredact forwards 3s " + delay + "s";
}
});
</script>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce quis fringilla nisi. Curabitur vitae mi ultrices nunc sodales sodales at eget est. Aenean placerat eleifend lorem sed congue. Vivamus rutrum mi tempus leo interdum, vel volutpat velit consequat. Pellentesque eu sem metus. Nullam quis mauris ultrices augue blandit consequat. Vestibulum sollicitudin odio sed lobortis lacinia. Vivamus semper est et sapien ultrices, non vestibulum sapien tincidunt. Vivamus nunc neque, tincidunt ut arcu quis, bibendum hendrerit odio. Suspendisse id molestie ligula. Nulla dapibus venenatis tellus, egestas imperdiet velit pretium pellentesque. Mauris risus nibh, feugiat et magna sit amet, malesuada sagittis tellus. Curabitur porta, turpis ac tincidunt pharetra, augue est sodales ipsum, vitae pharetra eros nisl nec ante. Duis mattis volutpat est, in hendrerit urna mattis sed.<p>
<p>In bibendum nisl sit amet libero tempus ullamcorper. Vivamus a augue scelerisque, fermentum lorem et, vehicula justo. Praesent aliquet venenatis libero eget bibendum. Nam imperdiet fermentum libero et sagittis. Fusce varius posuere arcu, convallis varius ante aliquam ac. Proin eu nisi commodo, interdum erat vitae, iaculis massa. Fusce quis elit ac lacus viverra adipiscing. In hac habitasse platea dictumst. Sed sodales mauris non condimentum ultricies. Maecenas at venenatis arcu. Vestibulum scelerisque lacinia libero, eu tincidunt diam egestas eu. Suspendisse eu eros nulla. Ut dignissim nisl sed turpis tristique aliquam.
</p>