javascript中输出问题

来源:百度知道 编辑:UC知道 时间:2024/05/05 06:53:10
<script language="JavaScript">
function makeArray() {
this.length = makeArray.arguments.length
for (var i = 0; i < this.length; i++)
this[i+1] = makeArray.arguments[i]
}
var fArray = new makeArray;
var x = 1;
var msg1 = "<font color='FF0000'>hello world</font>";
function newsFeed() {
document.form1.news2.value=msg1.substring(0,x);
x+=1;
setTimeout("newsFeed() ",1000);
}
</script>

请问逐字输出时如何让JavaScript看懂HTML标记
也就是逐字输出红色的的"hello world"
!!!!!!!!!!更新!!!!!!!!!!!

我的意思是假如一句话有不同字体和颜色(N种,无规律,用已HTML代码表述),且要逐字输出。

该怎么编写?

我想先问问楼主的news是一个什么类型的控件? 如果是type为text的input控件的话,是无法在其value中写入html标签的,它只会把html代码当成普通的文本进行显示。

楼主应该是新手,代码写得有点……

下面按楼主意思给出一个简单实现

<div id="here"></div>
<script language="JavaScript">
var msg1 = 'hello world';
var temp = document.getElementById('here');
var f = document.createElement('font');
f.color = 'FF0000';
temp.appendChild(f);
var i = 0;
setInterval(function() {
f.innerHTML = msg1.substr(0, i++ % msg1.length + 1);
},1000);
</script>

把这段放到<body></body>中可以看到你想要的效果。

祝楼主成功

==================================================================
问题补充的回答:

都可以啊。你是要整段变色还是一个字一个色?

无规律变化是指手动控制的还是随机的?

DOM中通过ID获到了HTML节点。

通过innerHTML属性可以访问到节点内的html内容

news2如果是text,就不可能呢,text的
value写html是不会解析的。只能设置news2.style.color="#ff00