解释一段javascript的代码?

来源:百度知道 编辑:UC知道 时间:2024/05/24 10:45:11
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<script language="JavaScript" type="text/javascript">
function turnit(ss,ii){
//循环判断,ss为总列表数,ii为当前列
for (i=1;i<=ss;i++){
//错误过滤,当i=1至ss中有一项以上出错,自动过滤
try{
//当i=ii时展开目录数,否则关闭
if (i==ii){
//判断i列的目录数是否展开,没有就展开,否则关闭
if (window.eval("content"+i).style.display=="none"){
window.eval("content"+i).style.display=&

首先,style.display=""是用来显示对象的,对应的隐藏方法是.style.display="block";

eval是把字符串当做js语句运行。那么上面的window.eval("content"+i).style.display="";当i=2时,也就等于 content2.style.display="",他的目的就是用循环来控制多个对象。

但是content2是一个对象的id,用id直接调用对象的方法只有IE支持,也就是说这段程序只有ie支持。正确的方法应该这样写:
document.getElementById("content"+i).style.display="";