隐藏页面内容,直到在WebBrowser控件中应用过滤器

时间:2012-11-15 14:22:04

标签: webbrowser-control autohotkey

我正在修改web浏览器控件中显示的Web内容,并在应用所有更改之前寻找不显示它们的方法。

我目前正在使用DocumentComplete事件,在过滤某些页面时,其内容只是可见的。所以我想把它们隐藏起来,直到一切都变好为止。

simple.html

<html>
<head>
<style type="text/css">
div {
    font-weight: bold;
}
</style>
</head>
<body><div>foo</div> bar</body>
</html> 

演示脚本

new WBControl("file:///" A_ScriptDir "/simple.html")

class WBControl {

    DocumentComplete(oParams*) {
        doc :=  oParams[3].document
        sleep 200   ; simulate a delay caused by a heavy task
        doc.styleSheets[0].rules[0].style.fontweight := "normal"
    }

    __New(strURL="") {
        static WB
        Gui, New, Resize MaximizeBox
        Gui, Add, ActiveX, vWB w780 h580, Shell.Explorer  
        Gui, show, w800 h600
        ComObjConnect(WB, this)
        WB.Navigate(strURL)
    }   
}

有办法吗?

1 个答案:

答案 0 :(得分:0)

尝试:

document.body.style.visibility := "hidden"

要恢复可见性,请将其设置为空字符串。

document.body.style.visibility := ""

你也可以创建一个简单的加载显示来代替;如果你想要花哨。