如何在Javascript字符串数组中包含超链接?

如何在Javascript字符串数组中包含超链接?,javascript,jquery,html,Javascript,Jquery,Html,我试图向字符串添加一个超链接——我试图同时使用.link和.innerHTML——但我想我可能误解了我应该做什么(这是一个非常新的问题)。下面是我的代码: <div id="typedtext"></div> <script type="text/javascript"> // set up text to print, each item in array is new line var aText = new Array( "Hi, I'm Krishaa

我试图向字符串添加一个超链接——我试图同时使用.link和.innerHTML——但我想我可能误解了我应该做什么(这是一个非常新的问题)。下面是我的代码:

<div id="typedtext"></div>
<script type="text/javascript">
// set up text to print, each item in array is new line
var aText = new Array(
"Hi, I'm Krishaan!", "A few words, wish I could add a link here", "Here are 
some words." ,"thanks a million for any help -- click here for more."
);
var iSpeed = 100; // time delay of print out
var iIndex = 0; // start printing array at this posision
var iArrLength = aText[0].length; // the length of the text array
var iScrollAt = 20; // start scrolling up at this many lines
var iTextPos = 0; // initialise text position
var sContents = ''; // initialise contents variable
var iRow; // initialise current row

function typewriter()
{
sContents =  ' ';
iRow = Math.max(0, iIndex-iScrollAt);
var destination = document.getElementById("typedtext");

while ( iRow < iIndex ) {
sContents += aText[iRow++] + '<br />';
}
destination.innerHTML = sContents + aText[iIndex].substring(0, iTextPos) + 
"_";
if ( iTextPos++ == iArrLength ) {
iTextPos = 0;
iIndex++;
if ( iIndex != aText.length ) {
iArrLength = aText[iIndex].length;
setTimeout("typewriter()", 500);
}
} else {
setTimeout("typewriter()", iSpeed);
}
}

//设置要打印的文本,数组中的每个项目都是新行
var aText=新数组(
“嗨,我是克里沙安!”,“几句话,希望我能在这里添加一个链接”,“这里是。”
“谢谢你的帮助,点击这里获取更多信息。”
);
var iSpeed=100;//打印输出延时
变量iIndex=0;//在此位置开始打印阵列
var iArrLength=aText[0]。长度;//文本数组的长度
var iScrollAt=20;//从这么多行开始向上滚动
var iTextPos=0;//初始化文本位置
var scocontents='';//初始化内容变量
var iRow;//初始化当前行
功能打字机()
{
sContents='';
iRow=数学最大值(0,iIndex iScrollAt);
var destination=document.getElementById(“typedtext”);
而(iRow';
}
destination.innerHTML=sContents+aText[iIndex]。子字符串(0,iTextPos)+
"_";
if(iTextPos++==iArrLength){
iTextPos=0;
iIndex++;
如果(iIndex!=aText.length){
iArrLength=aText[iIndex]。长度;
设置超时(“打字机()”,500);
}
}否则{
setTimeout(“typewriter()”,iSpeed);
}
}

与标准HTML一样,您可以简单地将所需链接包装在
中,同时通过JavaScript输出:

//设置要打印的文本,数组中的每个项都是新行
var aText=new Array(“嗨,我是Krishaan!”,“几句话,希望我能在这里添加一个链接”,“这里有一些话”,“非常感谢您的帮助--单击以获取更多信息”);
var iSpeed=100;//打印输出延时
变量iIndex=0;//在此位置开始打印阵列
var iArrLength=aText[0]。长度;//文本数组的长度
var iScrollAt=20;//从这么多行开始向上滚动
var iTextPos=0;//初始化文本位置
var scocontents='';//初始化内容变量
var iRow;//初始化当前行
功能打字机(){
sContents='';
iRow=数学最大值(0,iIndex-iScrollAt);
var destination=document.getElementById(“typedtext”);
而(iRow';
}
destination.innerHTML=sContents+aText[iIndex]。子字符串(0,iTextPos)+
"_";
if(iTextPos++==iArrLength){
iTextPos=0;
iIndex++;
如果(iIndex!=文本长度){
iArrLength=aText[iIndex]。长度;
设置超时(“打字机()”,500);
}
}否则{
setTimeout(“typewriter()”,iSpeed);
}
}
打字机()

<代码> 您应该强烈考虑在编写代码时使用缩进。这将使重构和调试变得更加容易,无论是对你还是其他必须阅读它的人来说。@CertainPerformance--你是对的,我将确保在将来更加勤奋这一点,谢谢:)太棒了,我以前试过,但我显然做得很糟糕,因为我使用了“而不是”-非常感谢!