Javascript实现代码折叠功能
投稿:daisy
代码折叠起来,使整段程序缩成一行,看起来清爽了许多。大家在使用Visual Studio环境进行开发时,可以把某个类或某个函数折叠起来,在很多网页上也有类似的功能,那到底是如何实现的呢?其实很简单,只要通过JavaScript就可以实现。
一、首先定义一个JavaScript function
,如下:
function puckerMenu(level) { var levelLength = ('row' + level).length; var toDo = '0'; for (var iCount = 0 ; iCount < document.all.length; iCount++){ if ( document.all[iCount].id.indexOf('row' + level) > -1 && ( document.all[iCount].id.length > levelLength)) { if ( document.all('level' + level).src.indexOf('minus.gif') > -1 ) { document.all[iCount].style.display = 'none'; toDo = '1'; } else { document.all[iCount].style.display = 'block'; toDo = '0'; } } } if ( toDo == '1' ) { document.all('level' + level).src = 'images/plus.gif'; } else { document.all('level' + level).src = 'images/minus.gif'; } }
二、然后在网页上定义一个div
和一个ul
,注意div
中要包含一个id
为level
开头的image
和一个onclick
事件,ul
中id
要包含row
,默认情况下是展开的,如果需要默认为闭合,则要在ul
中加入style="display:none"
例子如下:
<body> <divstyle="CURSOR: hand" onclick="puckerMenu('1');"><IMGid=level1 src="images/minus.gif">public class DataAccess</div> <ulid=row1> <li> private string connString; <divstyle="CURSOR: hand" onclick="puckerMenu('2');"><IMGid=level2 src="images /plus.gif">protected DbConnection OpenConnection()</div> <ulid=row2style="display:none">{...}</ul> <li> Other </ul> </body>
总结
以上就是本文的全部内容,希望对有需要的人能有所帮助。如果有疑问可以留言讨论。