分享

铁芒网博 - 专注一切网页技术的个人多媒体博客

 ShangShujie 2007-10-15
 有时候我们需要在Flex应用中嵌入HTML代码,根据嵌入HTML要求的不同有以下两种方法:
    1、Flex文本组件(Label、Text、TextArea)的htmlText属性支持一些基本的HTML代码,例如:
<mx:TextArea> 
 <mx:htmlText> 
   <![CDATA[ 
     <p align="center"><font size="15" color="#3399ff">this is a html code</font></p> 
   ]]> 
 </mx:htmlText> 
</mx:TextArea> 

    2、我们可以将Flex应用嵌入到HTML页面中,然后通过Flex2中的ExternalInterface(Flex1.5使用getURL("javascript:javascriptMethod"))
    来实现Flex与HTML javascript的相互交互,进一步的,如果要在Flex应用中嵌入完整的HTML呢? 
    其实实现的方法很简单,只需要使用HTML的Iframe标签来导入需嵌入的HTML页面,
    然后使用ExternalInterface调用相应的javasript将该Iframe移动到我们Flex页面需要嵌入HTML页面的部分之上就可以了,示意图如下:

    也就是说,我们包含Flex SWF文件的HTML页面主要有三个部分:
1、Flex swf 插件容器,FlexBuilder自动生成部分

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" 
   id="

    2、HTML Iframe标签,绝对定位,用来导入HTML页面

<iframe id="myFrame" name="myFrame"  frameborder="0" 
  style="position:absolute;background-color:transparent;border:0px;visibility:hidden;" /> 

    3、移动Iframe和在Iframe中导入需嵌入Flex中的HTML页面的脚本

<script> 
function moveIFrame(x,y,w,h) { 
   var frameRef=document.getElementById("myFrame"); 
   frameRef.style.left=x; 
   frameRef.style.top=y; 
   frameRef.width=w; 
   frameRef.height=h; 

function loadIFrame(url){ 
  top.frames["myFrame"].location.href=url; 

</script> 
 
注:关键点,系统产生的html页面需要手动加入上述代码,否则没有效果,许多朋友看不到实例效果就是这个原因。

查看更多...

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多