这个想法是针对一个预定义的不可见P元素,文档里面有文本,并使其再次展开和可见(在不包含身体加载事件时使文本不可见的函数)
我已经评论了不能使用子字符串方法的代码行。
var tally = 0; //global.
var rollTextOut = function(x){ //make re-usable for all roll-outs.
var anim = setInterval(function(){sequence()}, 50);
function sequence(){
tally++;
if(x===1){
var pHidden1 = document.getElementById("roll1");
pHidden1.style.background="#fff";
pHidden1.style.zIndex="2";
pHidden1.style.visibility="visible";
var text = pHidden1.innerHTML; //targets the p text inside html doc.
pHidden1.innerHTML = text.substring(0, tally); //<why doesn't this work?
}
else if(x===2){
var pHidden2 = document.getElementById("roll2");
pHidden2.style.background="#fff";
pHidden2.style.zIndex="2";
pHidden2.style.visibility="visible";
pHidden2.innerHTML = tally;
}
else if(x===3){
var pHidden3 = document.getElementById("roll3");
pHidden3.style.background="#fff";
pHidden3.style.zIndex="2";
pHidden3.style.visibility="visible";
pHidden3.innerHTML = tally;
}
else{
var pHidden4 = document.getElementById("roll4");
pHidden4.style.background="#fff";
pHidden4.style.zIndex="2";
pHidden4.style.visibility="visible";
pHidden4.innerHTML = tally;
}
if(tally===15){
clearInterval(anim);
tally=0;
}
};
};
任何帮助和建议非常感谢。
答案 0 :(得分:0)
您删除了默认文本,因此您不能增加下一个字母,因为它不再存在。所以存储一个引用。
var pHidden1 = document.getElementById("roll1");
if (!pHidden1.myDefaultText) {
pHidden1.myDefaultText = pHidden.textContent || pHidden.innerText;
}
var text = pHidden1.myDefaultText;
pHidden1.innerHTML = text.substring(0, tally);