2013-01-06 54 views
0

我是新手,所以这可能很简单,但它不适合我。为什么不这个JavaScript脚本工作?

<div id="abc" style="width:100px; height:100px; background-color:Blue;" onclick="change()"> 
    Hi 
</div> 

而且这里有一个脚本,以便点击框应该更改文本。但没有。为什么?

function change() 
{ 
    var text = "abcde"; 
    var new1 = ""; 
    var element = document.getElementById('abc'); 
    for (var i=0;i<text.length;i++) 
    { 
     new1 = substring(i,text.length-i); 
     element.innerHTML = new1; 
    } 
} 

jsfiddle:here

回答

3

substring()必须应用到一个字符串(要提取的部分之一),所以你的情况,我相信,你的意图是这样的:

function change() 
{ 
    var text = "abcde"; 
    var new1 = ""; 
    var element = document.getElementById('abc'); 
    for (var i=0;i<text.length;i++) 
    { 
     new1 = text.substring(i,text.length-i-1); 
     element.innerHTML = new1; 
    } 
} 

example fiddle

+1

我认为问题在于该函数甚至没有执行(至少在Jfiddle中)。如果您在该函数的顶部放置了一个警报,然后单击该div,它不起作用。 – fdsa

+0

@fdsa在他的小提琴JS代码放在“onLoad”事件。因此,在解析相应的div时不知道。我将其改为“无包装(头)”,所以它在小提琴中起作用。 – Sirko

+0

谢谢。这是问题的一半。我看到的另一半是在左边有一个箱子,在那里我已经加载了,这是我通过在两个jsfiddles之间切换而发现的。再次感谢。 – ispiro

相关问题