xzn_html_tree(1.0) 可折叠大纲

2016-02-19 19:21 3 1 收藏

有一种朋友不在生活里,却在生命力;有一种陪伴不在身边,却在心间。图老师即在大家的生活中又在身边。这么贴心的服务你感受到了吗?话不多说下面就和大家分享xzn_html_tree(1.0) 可折叠大纲吧。

【 tulaoshi.com - Web开发 】


/** 可折叠大纲
* 类名 Tree
* 存放位置 xzn/html/tree.php
*/
/** 节点类
* 用于在树中保存相关参数
*
* @param $id  节点号
* @param $text 节点标题
* @param $value 节点参数,一般为url
* @param $image 节点图片
*/
class TreeNode {
  var $id;
  var $text;
  var $value;
  var $image;
  function TreeNode($id,$text,$value,$image) {
   $this-id = $id;
   $this-text = $text;
   $this-value = $value;
   $this-image = $image;
  }
}
/** 树类
* 用于保存和输出可折叠大纲
* 可折叠大纲使用FrontPage 2000的JavaScript脚本
*
* 方法
* set()
* 设置节点,节点编号采用1.2.3.4或1-2-3-4的形式。
* 无层次限制。输入次序不限。
* @param $id  节点号
* @param $text 节点标题
* @param $value 节点参数,一般为url
* @param $image 节点图片
*
* display()
* 向页面输出可折叠大纲
*
* 属性
* @public $node 数组,用于保存节点
* @public $jspath 脚本outline.js存放位置
*/
class Tree {
  var $node;
  var $jspath;
  function set($id,$text,$value="",$image="plus.gif") {
   $d = split("[.-]",$id);
   $e = "";
   for($i=0;$icount($d);$i++)
    $e .= "[".$d][$i]."]";
   $n = new TreeNode($id,$text,$value,$image);
   eval("$p=&$this-node$e;");
   $p[node] = $n;
  }
  function display() {
   echo 'script language="JavaScript" fptype="dynamicoutline"'."";
   echo '!--'."";
   echo 'function dynOutline() {}'."";
   echo '//--'."";
   echo '/script'."";
   echo 'script language="JavaScript1.2" fptype="dynamicoutline" src="'.$jspath.'outline.js"'."";
   echo '/script'."";
   echo 'script language="JavaScript1.2" fptype="dynamicoutline" for="document" event="onreadystatechange()"'."";
   echo '!--'."";
   echo 'initOutline()'."";
   echo '//--'."";
   echo '/script'."";
   echo 'table dynamicoutline initcollapsed border="0" cellpadding="0" cellspacing="0" onclick="dynOutline()"'."";
   ksort($this-node);
   reset($this-node);
   while(list($key,$value) = each($this-node)) {
    $this-next($value,0);
   }
   echo "/table";
  }
  function next($node,$level) {
   if(! is_array($node))
    return;
   if(isset($node[node])) {
//   echo $level.",".$node[node]-id.",".$node[node]-text.",".$node[node]-value.",".$node[node]-image."";
    echo 'tr'."";
    echo 'td valign="baseline" width="42"img src="'.$node[node]-image.'"/td'."";
    echo 'td valign="top" width="100%"';
    if(empty($node[node]-value))
     echo $node[node]-text."";
    else
     echo 'a href="'.$node[node]-value.'"'.$node[node]-text."/a";
    echo 'table border="0" cellpadding="0" cellspacing="0" width="100%"'."";
   }
   if(count($node) == 1) {
    echo "/td/tr/table";
    return;
   }
   ksort($node);
   reset($node);
   while(list($key,$value) = each($node)) {
    $this-next($value,$level+1);
   }
   echo "/td/tr/table";
  }
}

来源:https://www.tulaoshi.com/n/20160219/1620803.html

延伸阅读
标签: Web开发
按功能排列 NN:表明哪个早期Netscape版本支持这个标签 IE:表明哪个早期InternetExplorer版本支持这个标签 DTD:表明符合XHTML1.0DTD何级别的定义.S=Strict(严格),T=Transitional(过渡),andF=Frameset(框架) 开始标签用途(Purpose)NNIEDTD 基本标签 !DOCTYPE?文档类型(Definesth...
功能说明: 以树状图列出目录的内容。 语 法: tree [-aACdDfFgilnNpqstux][-I <范本样式][-P <范本样式][目录...] 补充说明: 执行tree指令,它会列出指定目录下的所有文件,包括子目录里的文件。 参 数:   -a   显示所有文件和目录。   -A   使用ASNI...
餐巾折叠是就餐前的准备工作之一,也是一种就餐艺术,或典雅庄重,或活泼休闲,或浪漫温馨,款款造型别致时尚,有着丰富的寓意。可以起到装饰就餐环境,美化餐台气氛以及卫生保洁的作用。将餐巾折叠成美丽动人的玫瑰,放在你的餐盘里,会带给你一种不一样的温馨气息,成为你的餐桌上的一抹温馨的亮彩。 餐巾纸叠玫瑰 手工DIY 图解 ...
随着科技不断发展,现在几乎每家每户都装上了空调,不过扇子却依然活跃在人们的生活中,如今,古老的扇子主要是作为一种非常优雅的装饰而存在。这是一个比较有代表表意义的餐巾折叠艺术,折叠起来比较简单,与传统纸扇的折法也有着一定的区别,我们来看一看折叠的步骤就清楚了。

经验教程

494

收藏

98
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部