新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 精华版 是对 精华区 的 提升.
    精华版 将以结构化和分类的方式整理全站的精华文章。以便于广大站友更快地找到自己所需的信息
    [返回] 中文XML论坛 - 专业的XML技术讨论区XML.ORG.CN讨论区 - XML技术『 精华版 』 → [03060]ASP+Flash+XML的小作品 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 11109 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: [03060]ASP+Flash+XML的小作品 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     yuji1998 帅哥哟,离线,有人找我吗?魔羯座1981-12-22
      
      
      威望:5
      头衔:蓝色先锋
      等级:大二(研究C++)
      文章:212
      积分:1059
      门派:XML.ORG.CN
      注册:2004/4/10

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给yuji1998发送一个短消息 把yuji1998加入好友 查看yuji1998的个人资料 搜索yuji1998在『 精华版 』的所有贴子 访问yuji1998的主页 引用回复这个贴子 回复这个贴子 查看yuji1998的博客楼主
    发贴心情 [03060]ASP+Flash+XML的小作品

    [原作者:forwar]
                 [疑问点击]    [意见箱]

    我将举一个我以前制作的ASP+Flash+XML的小作品作为实例。这个小作品也将给大家提供下载源代码进行研究。(这个模型的研究要强烈的感谢ZAS的支持!,在此鸣谢!)

    先看看源文件的XML初始化情况,以下是部分代码,我将对其中比较重要的几个部分来说说怎么读取动态的XML文件,里面涉及到一些XML对象的基本方法和属性,大家可以练习一下。遇到一些方法属性的时候我就不再声明了,请参照Macromedia的帮助文件。
    myXML   =   new   XML();//构造XML对象
    System.useCodePage   =   true;//支持中文码制
    myXML.load("http://127.0.0.1/xml/showit.asp?page="'' target="_blank" >http://127.0.0.1/xml/showit.asp?page=";+page+"&temp="+Math.floor(Math.random()*1234567890));
    /*--------------------------------------------------------------------
    ----------------------------------------------------------------------
    这里是一个小小的诀窍:myXML.load("一个动态的地址")。这样可以防止读取缓存。众所周知
    如果这次我们请求的地址和上次相同的话,浏览器就会检查缓存,为了防止这种现象我们把
    地址的后面加上一个随机数page=+page+"&temp+Math.floor(Math.random()*1234567890))";
    Math.random()函数将产生一个大于0小于1的随机数,这个随机数*1234567890,之后再用
    Math.floor()   函数取其下限值,这样我们每次访问的地址重复的可能性基本是微乎其微的
    缓存的问题就解决了,就比如
    第一次访问的地址:http://127.0.0.1/xml/showit.asp?page=1&temp=334526384
    而第二次访问的地址就是:   http://127.0.0.1/xml/showit.asp?page=1&temp=664636251
    请求的都是显示第一页,而浏览器不会调用缓存。
    ----------------------------------------------------------------------
    ---------------------------------------------------------------------*/
    myXML.onLoad   =   checkLoad;//当MyXML.onLoad事件被触发的时候,则执行checkLoad事件
    function   checkLoad(success)   {//定义checkLoad事件
       if   (success)   {//如果是success状态
             readata();//执行readata()函数
       }
          function   readata()   {//再定义readata函数
                            _root.preurl   =   new   Array   ();//构造数组preurl
                            _root.physurl   =   new   Array   ();//构造
                            _root.filename   =   new   Array   ();//构造
                            _root.filetype   =   new   Array   ();//构造
          _root.comm=new   Array();//构造
             _root.addtime=new   Array();//构造
             _root.filename=new   Array();//构造
             _root.viewed=new   Array();//构造
                            skiphead.ignoreWhite   =   1;//对后面定义的skiphead   这个XML对象忽略空白节点
                            skiphead   =   myXML.firstChild.childNodes[0];//skiphead定义为myXML.firstChildfirstChild.childNodes[0]
          _global.pagemax=myXML.firstChild.childNodes[1].childNodes;//定义一个全局变量_global.pagemax
          
                            parentName   =   skiphead.nodeName;//定义节点名
                            tencontent   =   new   Array   ();//定义数组
                            tencontent   =   skiphead.childNodes;//定义skiphead的节点集数组为tencontent
                            sites   =   new   Array   ();//定义sites为数组
                            sites   =   tencontent;//赋值
                            i   =   0;
                            while   (i   <=   sites.length)   {//一个循环
             if   (sites[i].nodeName   !=   null)   {//如果节点名不为空则……
    /*--------------------------------------------------------------------------------
    下面的代码就是具体的判断,我就不详细说了。通过这段代码我只想阐述Flash读取动态ASP返回值的例子,相信大家看过之后也会理解的,如果大家对这个小模型感兴趣的话,就请下载模型研究吧   :)                                                
                nowsite   =   sites[i];
                         nowsiteAtt   =   new   Array   ();
                         nowsiteAtt   =   nowsite.attributes;
                         nowsiteId   =   nowsiteAtt.id;
                        strnowsiteId   =   new   String   (nowsiteId);
                         nowsiteIdSimple   =   strnowsiteId.slice(-1);
                         nowsiteIdSimple   =   "site"   +   nowsiteIdSimple;
                         nowsitedata   =   new   Array   ();
                         nowsitedata   =   nowsite.childNodes;
                             j   =   0;
                             while   (j   <=   nowsitedata.length)   {
                   
                                     if   (nowsitedata[j].nodeName   !=   null)   {
                      
                                          switch   (nowsitedata[j].nodeName)   {
                                                                  case   "filetype"   :   
                     _root.filetype[nowsiteIdSimple]   =   nowsitedata[j].firstChild.nodevalue;
                                                                break;
                                                                                                   case   "filename"   :   
                   _root.filename[nowsiteIdSimple]   =   nowsitedata[j].firstChild.nodevalue;
                            break;
    case   "pre"   :   
                   _root.preurl[nowsiteIdSimple]   =   nowsitedata[j].firstChild.nodevalue;
                            break;
    case   "physurl"   :   
                  _root.physurl[nowsiteIdSimple]   =   nowsitedata[j].firstChild.nodevalue;
                            break;
    case   "comm"   :   
                 _root.comm[nowsiteIdSimple]   =   nowsitedata[j].firstChild.nodevalue;
                            break;
    case   "addtime"   :   
                 _root.addtime[nowsiteIdSimple]   =   nowsitedata[j].firstChild.nodevalue;
                            break;
    case   "viewed"   :   
                 _root.viewed[nowsiteIdSimple]   =   nowsitedata[j].firstChild.nodevalue;
                                                                               
                      }
                   }
                                                                j++;
                                                       
                
                }
                                        }
                                        i++;

                }

                
       }
          
          }


       收藏   分享  
    顶(1)
      




    ----------------------------------------------
    私人网站:蓝尚WEB商务平台http://www.lanshang.com     建站黄页:http://www.lanshang.com/link.asp WEB技术文库:http://www.lanshang.com/wenzhang/ 
    电子书籍: http://www.lanshang.com/ebook/  技术交流:http://www.lanshang.com/bbs/

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2004/5/27 1:39:00
     
     GoogleAdSense魔羯座1981-12-22
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 精华版 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/12/27 16:05:40

    本主题贴数1,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    93.750ms