点击按钮后,webBrowser载入页面,并且页面自动向下滚动 点击按钮后,webBrowser载入页面,并且页面自动向下滚动滚动结束后,自动载入下一页面,如此循环 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 (function() { var body = document.documentElement && document.compatMode == "CSS1Compat" ? document.documentElement : document.body; var timer = setInterval(function() { scrollBy(0,1); if (body.scrollHeight <= body.clientHeight + body.scrollTop) { clearInterval(timer); location = "http://blog.csdn.net/zswang" } }, 10);})(); 实际的应用....{ public partial class Form1 : Form { public Form1() { InitializeComponent(); } /// <summary> /// 访问链接 /// </summary> public const string url = "http://baike.baidu.com/view/{0}.htm"; /// <summary> /// 每次滚动的像素 /// </summary> public int offsetY = 3; /// <summary> /// 滚动的间隔时间毫秒为单位 /// </summary> public int interval = 10; /// <summary> /// 当前页数 /// </summary> public int page = 1; /// <summary> /// 是否自动滚动 /// </summary> public bool autoScroll = false; /// <summary> /// 加载页面 /// </summary> public void openUrl() { webBrowser1.Navigate(string.Format(url, page)); } /// <summary> /// 开始滚屏 /// </summary> public void startScroll() { webBrowser1.Navigate(string.Format(@"javascript:(function() {{ var body = document.documentElement && document.compatMode == 'CSS1Compat' ? document.documentElement : document.body; clearInterval(window.timerAutoScroll); window.timerAutoScroll = setInterval(function() {{ scrollBy(0, {0}); if (body.scrollHeight <= body.clientHeight + body.scrollTop) {{ clearInterval(window.timerAutoScroll); location = '{2}' }} }}, {1});}})();", offsetY, interval, string.Format(url, page)) ); } /// <summary> /// 停止滚屏 /// </summary> public void stopScroll() { webBrowser1.Navigate(@"javascript:clearInterval(window.timerAutoScroll);"); } private void Form1_Load(object sender, EventArgs e) { openUrl(); } private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { if (!autoScroll || string.Compare(e.Url.ToString(), string.Format(url, page), true) != 0) return; // 不滚屏或者加载完成的不是当前页面 page++; // 下一页 startScroll(); } private void buttonStart_Click(object sender, EventArgs e) { if (autoScroll) return; autoScroll = true; startScroll(); } private void buttonStop_Click(object sender, EventArgs e) { if (!autoScroll) return; autoScroll = false; stopScroll(); } }} webBrowser1.Navigate("javascript,可以这样写吗?为何我连这样的语句都无法达到效果?webBrowser1.Navigate("javascript:alert('111');");提示IE无法下载页? 至少你得等页面加载完毕,否则代码在哪里执行?private void button1_Click(object sender, EventArgs e){ webBrowser1.Navigate("about:blank"); while (webBrowser1.IsBusy) Application.DoEvents(); webBrowser1.Navigate("javascript:alert(1);");} 有关时间校验的问题 新手求助!!! 请问有没有容器可以存放不同的泛型类型? 调用DLL实现与设备的通信问题 学号='"+tb1.Text+"' 为什么这个地方要用双引号,又要用单引号? 博客开通!庆祝散分。。。。。。。。。。。。。。 满分请教关于ARCGIS的问题,最好能加Q COM+应用程序代理安装失败! 用OleDb方式连接excel,无法删除默认sheet的问题 关于asp.net 紧急求助:如何获得datagridview里面不是绑定数据库列的属性和控制 C#怎么调用条形码控件?
var body = document.documentElement && document.compatMode == "CSS1Compat" ?
document.documentElement : document.body;
var timer = setInterval(function() {
scrollBy(0,1);
if (body.scrollHeight <= body.clientHeight + body.scrollTop) {
clearInterval(timer);
location = "http://blog.csdn.net/zswang"
}
}, 10);
})();
....
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
/// <summary>
/// 访问链接
/// </summary>
public const string url = "http://baike.baidu.com/view/{0}.htm";
/// <summary>
/// 每次滚动的像素
/// </summary>
public int offsetY = 3;
/// <summary>
/// 滚动的间隔时间毫秒为单位
/// </summary>
public int interval = 10;
/// <summary>
/// 当前页数
/// </summary>
public int page = 1;
/// <summary>
/// 是否自动滚动
/// </summary>
public bool autoScroll = false;
/// <summary>
/// 加载页面
/// </summary>
public void openUrl()
{
webBrowser1.Navigate(string.Format(url, page));
}
/// <summary>
/// 开始滚屏
/// </summary>
public void startScroll()
{
webBrowser1.Navigate(string.Format(@"javascript:
(function() {{
var body = document.documentElement && document.compatMode == 'CSS1Compat' ?
document.documentElement : document.body;
clearInterval(window.timerAutoScroll);
window.timerAutoScroll = setInterval(function() {{
scrollBy(0, {0});
if (body.scrollHeight <= body.clientHeight + body.scrollTop) {{
clearInterval(window.timerAutoScroll);
location = '{2}'
}}
}}, {1});
}})();", offsetY, interval, string.Format(url, page))
);
}
/// <summary>
/// 停止滚屏
/// </summary>
public void stopScroll()
{
webBrowser1.Navigate(@"javascript:clearInterval(window.timerAutoScroll);");
} private void Form1_Load(object sender, EventArgs e)
{
openUrl();
} private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
if (!autoScroll ||
string.Compare(e.Url.ToString(), string.Format(url, page), true) != 0) return; // 不滚屏或者加载完成的不是当前页面
page++; // 下一页
startScroll();
} private void buttonStart_Click(object sender, EventArgs e)
{
if (autoScroll) return;
autoScroll = true;
startScroll();
} private void buttonStop_Click(object sender, EventArgs e)
{
if (!autoScroll) return;
autoScroll = false;
stopScroll();
}
}
}
webBrowser1.Navigate("javascript:alert('111');");
提示IE无法下载页?
至少你得等页面加载完毕,否则代码在哪里执行?
private void button1_Click(object sender, EventArgs e)
{
webBrowser1.Navigate("about:blank");
while (webBrowser1.IsBusy) Application.DoEvents();
webBrowser1.Navigate("javascript:alert(1);");
}