对于webbrower,如果想消除滚动条,有三种可靠的办法
1.body元素的scroll = no
2.CSS设置:html,body {overflow:hidden;}
3....ControlSite::XDocHostUIHandler::GetHostInfo( DOCHOSTUIINFO* pInfo )...实现但,这些方法只是使滚动条不见而已,只是使鼠标的滚轮不能控制页面滚动而已。
其实,页面滚动机制还能运行,做一个实验:如果,一个页面高度超过webbrowser高度,而刚好有一个文本框处在webbrowser的下边界,该文本框只能看见上半部份,或者,在页面中看不见的地方有其它input元素。
然后点击,或者用tab键定位到页面中那些看不见或显示不完整的input元素。当,页面没有禁止滚动条时,滚动条自动滚动,使接收focus的输入控件显现。
这,有的时候当然很好。但,如果禁止了滚动条,页面自动上浮,使接收focus的输入控件显现。
这,不是我想要的结果,因为我在用html元素自己模拟实现了滚动。因此想完全阻止滚动机制求解我想到的办法有三个,都能实现效果,但导致页面跳动
1.document.body.onscroll = function(){scrollTo(0,0)}
2.document.documentElement.onscroll = function(){scrollTo(0,0)}
3.window.onscroll = function(){scrollTo(0,0)}
上述方法是javascript,翻译成ATL/C++也能实现不知道有没有更完美的办法