var global_index = 0;
var db = [ "10000000", "01000000", "00100000", "00010000", "00001000", "00000100", "00000010", "00000001" ];
function loadled()
{
var byte = db[ global_index ];
if( global_index < 7 ) global_index++; else global_index = 0;
for( var x = 0; x < byte.length; x++ )
{
document.getElementById("id_" + x ).src = [ "led_off.gif", "led_on.gif" ][ parseInt( byte[ x ], 10 ) ];
}
window.setTimeout( loadled, 100 );
}
window.onload = loadled;
</script></head>
</html>
我不理解以下一行:
document.getElementById("id_" + x ).src = [ "led_off.gif", "led_on.gif" ][ parseInt( byte[ x ], 10 ) ];
任何人都可以为此提供简单的解释或与普通写作进行比较吗?
感谢。
答案 0 :(得分:3)
我相信以下代码:parseInt( byte[ x ], 10 )
将始终返回0或1,因此选择eiter“led_off.gif”或“led_on.gif”作为元素x的src:)
HTH:)
答案 1 :(得分:0)
document.getElementById("id_" + x ).src = [ "led_off.gif", "led_on.gif" ][ parseInt( byte[ x ], 10 ) ];
document.getElementById(“id_”+ x)
选择名为id_x的html元素(其中x是代码中的变量)
的.src
指定您要更改上面选择的html元素的来源
[“led_off.gif”,“led_on.gif”] [ parseInt(byte [x],10)];
将根据x的值呈现为“led_off.gif”或“led_on.gif”。
parseInt(byte[x],10)
尝试将字符串转换为数字格式(在本例中为数字格式,基于10),并且将为0或1。
因此该行将成为:
的document.getElementById( “ID_ [X]”)。SRC =“led_off.gif”
或
的document.getElementById( “ID_ [X]”)。SRC =“led_on.gif”
取决于x的值。这意味着具有id = id_x的图像源将把源更改为另一个gif。