如何删除浏览器闪烁
本文关键字:浏览器 闪烁 删除 何删除 | 更新日期: 2023-09-27 18:01:59
我使用WebBrowser控件为我的聊天应用程序。每次它添加用户的消息-它刷新浏览器与它的新内容。而且效果很好。但是当我在html代码中添加背景后,每次刷新时它就开始闪烁。这是我的导航()方法:
public void Navigate(string url)
{
string text = File.ReadAllText(url);
if (bg.Length > 0)
webBrowser1.DocumentText = text.Replace("%bg%", "background='"" + bg + "'"");
else
webBrowser1.DocumentText = text;
}
这是我的HTML文件头:
addText("<html>'r'n<head>'r'n<meta charset=utf-8>'r'n</head>'r'n<body %bg% bgproperties='"fixed'" onload='"window.scrollTo(0,2147483647);'">'r'n<span style='"line-height: 20px'" style='"font-family: Arial; font-size: 14px'">'r'n<font color=black>", NewLine.No);
每当用户添加一条消息时,我的程序将它添加到html文件的末尾并执行Navigate()方法。
你有什么办法消除闪烁吗?
与其每次重新加载一个新文档,不如将现有的Document.Body
设置为InnerHTML
在<Head>
标签中添加以下两行
<meta http-equiv="Page-Enter" content="blendTrans(Duration=0)">
<meta http-equiv="Page-Exit" content="blendTrans(Duration=0)">
我添加了:
<meta http-equiv='Page-Exit' content='filter: expression(document.execCommand("BackgroundImageCache", false, true))'>
到我的HTML代码,它不闪烁。我不知道它是如何工作的(我不知道html),只是花了一些时间谷歌的解决方案。
这很奇怪,因为我可以替换:expression(document.execCommand("BackgroundImageCache", false, true))