日期:2014-05-18  浏览次数:20407 次

flash在根目录下显示,在二级目录下不显示的问题?
<object   classid= "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000 "   codebase= "http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0 "   width= "1003 "   height= "108 "   VIEWASTEXT>
                <param   name= "movie "   value= "Image/top.swf ">
                <param   name= "quality "   value= "high ">
                <embed   src= "Image/top.swf "   quality= "high "   pluginspage= "http://www.macromedia.com/go/getflashplayer "   type= "application/x-shockwave-flash "   width= "1003 "   height= "108 "> </embed> </object>
这段是我引用的动画的程序,将此段程序放到了top.ascx控件下(top.ascx为自己定义的控件因为用的频率大).index.aspx在站点的根目录下引用了top.ascx控件,动画能够播放出来.
问题:当我在与index.aspx同级的文件夹aa的下的bb.aspx文件里拖拽过来top.ascx控件结果动画显示不出来.也就是说在二级的目录下显示不出来动画.
前提:1   路径没问题
              2   我把Activex基本都给启用了
   3 ie的版本是6.0.379.1830
            4     macromedia   flash   player   6.0   r23
                  文件版本 6.0.23.0
   5

------解决方案--------------------
路径.
------解决方案--------------------
因为控件 的路径是根据页面所在的路径有变化的

建议将路径用代码来输出,或者用 "/flash/test.swf "这样,/相当于根目录
------解决方案--------------------
路径问题
ascx 在你设置 路径的时候 应该考虑放在哪几个页面来设置路径

如 top.ascx 在文件夹 indexascx下 index.aspx页在项目根目录下 将top.ascx 拖到index.aspx上 是可行的 但是不管什么路径都需要设置成如下:index.aspx页里的图片路径为images/aa.gif 则top.ascx 的路径也同样要使用images/aa.gif

如果top.ascx 同目录下的 b.aspx 页面 则需要如../images/aa.gif才会显示
------解决方案--------------------
你已经说明白了。但确实,是路径的问题。
你应该把所以的ascx放到一个目录下。比如:zcml/UserControl
然后在UserControl/Images/top.swf
这样才能保证你在不同页面调用用户控件里的图片或Flash路径是正确的。
------解决方案--------------------
控件的路径不是它自身存放的位置,而是引用他的页面的路径。比如,一个ascx在a/b/c目录下面,这时你在一个a/下的页面引用它,它的路径就是a/了,而不再是a/b/c了。
不知道说明白了没有
------解决方案--------------------
根据你的问题,你在index.aspx里引用ascx时,动画路径是zcml/Image/top.swf,所以能看
但是你在zcml/aa/bb.aspx里引用ascx时,它的路径就不是zcml/Image/top.swf了,而是
zcml/aa/Image/top.swf了,所以不行
------解决方案--------------------
像楼主这么用不行的,建议用完整路径,如果是控件就给控件留个属性就行了