大哥,比如我自己作了一个test.html的网页,我把它嵌入到IE控件中,然后再在这个网页的javascript脚本中包含(#include)几个*.js的文件(其中包含的数目可能变化)。(1)我想问您一下,如果我用dhtml的一些接口,枚举test.html文件中所有特定的脚本对象的时候会不会包含那些*.js文件?(2)还是必需得我自己再分析一下test.html文件中html源代码找到类似#include 这样的语句,然后再在每个*.js文件中利用dhtml的接口为每个*.js搞一遍。

解决方案 »

  1.   

    顶一下,顺便再问一个问题:蒋晟大虾曾经说:
    “禁用指定网页上全部ActiveX控件的初始化
    或者
    在文档下载完成之后查找网页中URL属性中包含swf的控件,然后将其URL属性设置为空字符串,就可以屏蔽flash控件。”这种作法,我怎么感觉flash控件有可能已经下载了一部分呢,因为*.js的文件解析是同步的,所以只要把下载flash控件的部分放到*.js文件中,就有可能被下载了,所以我感觉蒋晟大虾说的这种方法,只不过是在显示的时候作了手脚或者也可以说屏蔽的不够全面,没有111222的IInternetProtocolInfo的方法好,不知道是不是这样?
      

  2.   

    回复人: jiangsheng(蒋晟.MSMVP2004Jan) ( ) 信誉:257  2005-02-05 22:35:00  得分: 0  
    1 <Script>元素支持IHTMLScriptElement接口。实际上,<Script>可以既设置src属性,又包含代码。解析的顺序是src属性优先于代码。在浏览器的DocumentComplete事件之后,所有脚本已经解析完毕。
    2 用IInternetProtocolInfo过滤mime数据太麻烦了……
      

  3.   

    首先谢谢蒋大哥的回答,您的IE编程果然深入敌穴呀,呵呵。:)在我上边的第一个问题中可能是没有表达明白,其实我就是问:如果在DocumentComplete发生后,我用(1)中两个接口方法得到script脚本,是不是得不到像<script src="test.js">这样,test.js中的脚本?是不是如果我打算得到网页上所有的脚本,还必须自己再次使用(2)中的方法得到test.js?
    (1)
    HRESULT IHTMLScriptElement::get_text(BSTR *p);
    HRESULT IHTMLScriptElement::put_text(BSTR v);
    (2)
    HRESULT IHTMLScriptElement::get_src(BSTR *p);
    HRESULT IHTMLScriptElement::put_src(BSTR v);IE弄了这么多脚本编程方便也苦闷呀!:(