动态加载的TREE

By19.Published on一月 15, 2010 22:47. 42 Views .
很差差一般好非常好 (1 次评分, 平均: 4.00 out of 5)
Loading ... Loading ...

FLEX开发的一个简单的动态加载子节点的TREE.

做了一个动态加载子节点的TREE,可以通过XML中节点的属性来完成加载和执行操作。用法:TREE需要设置两个地址,第一次访问地址和每次点击节点响应地址,可以通过传入参数设置:

第一次访问的地址参数为“u”,默认每次响应地址是“./19TreeRequest”,也可以通过传入treeRequest参数来改变,比如这个演示的FLASH的地址就是:

http://www.ll19.com/up/19_tree/main.swf?u=http://www.ll19.com/up/19_tree/first.xml&treeRequest=http://www.ll19.com/up/19_tree/request.php

每次响应都应该生成类似下面的XML:

1
2
3
4
5
6
7
8
9
10
<?xml version="1.0" encoding="UTF-8"?>
<root label="文章分类" title="LL19.com的文章" child="yes">
	<!--child用来判断是否动态加载字节点 value值的是执行时候需要的值-->
	<node label="空目录演示" child="maybe" value="c_0"/>
	<node label="日志" child="maybe" value="c_1"/>
	<node label="喜欢的" child="maybe" value="c_2"/>
	<node label="收集" child="maybe" value="c_3"/>
	<node label="页面文章-tags" child="no" value="page_1"/>
	<node label="页面文章-blogRoll" child="no" value="page_2"/>
</root>

XML说明:

1
<root label="文章分类" title="LL19.com的文章" child="yes">

第一次响应需要生成两个标题属性,之后每次只需要生成child属性,一般来说设置为yes就行了。

1
<node label="空目录演示" child="maybe" value="c_0"/>

child=maybe就是指需要再次读取,tree以文件夹显示,点击后会向treeRequest设置的地址传入后面的value的值,即value=c_0,之后treeRequest应该根据此参数来再次生成XML返回。

child=”no”表示下面没有子节点了,TREE以文件的形式显示,点击后会调用页面的JS。

1
2
3
function fileCall (value) { 
//根据value来执行操作 比如打开页面等
}

这里的例子演示,具体可以下载参考。

FLASH源文件目录下的图片src\images,分别代表未加载文件夹、加载后的文件夹、加载的文件和加载中读取的FLASH(GIF无法播放,只能显示一帧,所以用SWF代替)。

下载地址 http://code.google.com/p/glll/downloads/detail?name=19_tree.7z

本文来自: http://www.ll19.com/flex_tree.html

{ Tags: , }
这篇文章发布于 2010年01月15日,星期五,10:47 下午,归类于 Diary。 您可以跟踪这篇文章的评论通过 RSS 2.0 feed。 您可以留下评论,或者从您的站点trackback

6 Responses to “ 动态加载的TREE ”

  1. lindayyh811 lindayyh811 说: ( Has commented 3 times in LL19.com )

    qq:284675703. 或则给个联系方式.

  2. lindayyh811 lindayyh811 说: ( Has commented 3 times in LL19.com )

    qq:L284675703. 或则给个联系方式.

  3. lindayyh811 lindayyh811 说: ( Has commented 3 times in LL19.com )

    能发份完整的给我不? 那个core那个文件不能加载. 现在急着要这个.非常感谢.

    • 19. 19. 说: ( Admin commented )

      core直接引用编译就行了,这个版本所有代码已经提供完整,要不你就直接用这个编译好的FLASH算了。

      @lindayyh811:

  4. KOK KOK 说: ( Has commented 1 times in LL19.com )

    请问
    $(this).text(‘加载中…’);

    如何在这里加字体颜色?…

    • 19. 19. 说: ( Admin commented )

      @KOK:

      怎么在这里问JQUERY的问题,text只是赋值文本,如果你赋值的ELEMENT有CLASS就直接修饰就行了,或者用$(this).html(“<font color=\"#FF0000\">加载中…</font>”);


文章回复(Leave a reply):

注意: 评论者允许直接点击留言人下方的“回复并邮件”按钮将自己回复的评论邮件通知另外评论者。点击“回复”按钮则只回复不发邮件。