手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >网页下载文件期间如何防止用户对网页进行其他操作
网页下载文件期间如何防止用户对网页进行其他操作
摘要:做网页下载文件时,有时候文件过大,生成文件需要一段时间。这个时候要防止用户对网页进行其他操作,有种方法就是使用一个div覆盖在网页上,将网页...

做网页下载文件时,有时候文件过大,生成文件需要一段时间。这个时候要防止用户对网页进行其他操作,有种方法就是使用一个div覆盖在网页上,将网页锁住。

function lockScreen() { sWidth=$(window).width(); sHeight=$(window).height(); var bgObj=document.createElement("div"); bgObj.setAttribute('id','bgDiv'); bgObj.style.position="absolute"; bgObj.style.top="0"; bgObj.style.background="#CCCCCC"; bgObj.style.filter="progid:DXImageTransform.Microsoft.Alpha(style=3,opacity=25,finishOpacity=75"; bgObj.style.opacity="0.6"; bgObj.style.left="0"; bgObj.style.width=sWidth + "px"; bgObj.style.height=sHeight + "px"; if(sWidth < 860) { bgObj.style.width="860px"; } bgObj.style.zIndex = "10000"; document.body.appendChild(bgObj); }

使用如上函数可以锁住页面防止多次操作,要直到下载框出现时取消锁屏。

在服务器端(cgi)中设置cookie:

<pre name="code">char *configDownloadToken = "finishedDownloadFile"; printf("Content-Type: application/octet-streamnContent-Length: %ldn", s.st_size); printf( "Set-Cookie:configDownloadToken=%s; path=/; rn ",configDownloadToken); printf("Content-Disposition: attachment; filename="%s"n", strrchr(filename,'/') + 1); printf("Connection: closenn");

在客户端(html、js)导入插件jquery.cookie.js,在html文件中要包含此插件,js文件中定时获取cookie

var configDownloadCheckTimer; $(document).ready(function () { configDownloadCheckTimer = window.setInterval(function() { var cookieValue = $.cookie('configDownloadToken'); if (cookieValue === "finishedDownloadFile") { refreshPage(); finishDownload(); } }, 1000); }); function finishDownload() { window.clearInterval(configDownloadCheckTimer); $.removeCookie('configDownloadToken'); //clears this cookie value }

这样就可以了。

【网页下载文件期间如何防止用户对网页进行其他操作】相关文章:

jquery预加载图片的方法

jquery插件splitScren实现页面分屏切换模板特效

jQuery页面的滚动位置scrollTop、scrollLeft

js的event详解。

JavaScript容易犯错的九个陷阱

JavaScript中用sort()方法对数组元素进行排序的操作

巧妙破除网页右键禁用的十大绝招

根据分辨率不同,调用不同的css文件

Javascript通过overflow控制列表闭合与展开的方法

AngularJS数据源的多种获取方式汇总

精品推荐
分类导航