ホームページ > ウェブフロントエンド > jsチュートリアル > javascript div マスク層が page_javascript スキル全体をブロックします

javascript div マスク層が page_javascript スキル全体をブロックします

WBOY
リリース: 2016-05-16 18:50:16
オリジナル
1683 人が閲覧しました

具体的な解決策は次のとおりです。
1. IE と FF での document.body オブジェクトの clientHeight、offsetHeight、scrollHeight 属性の違い。
clientHeight
IE と FF では、どちらもブラウザーの表示領域、つまり、ページを除いた残りのページ表示領域の高さを参照する属性に違いはありません。ブラウザのツールバーのステータスバー。
offsetHeight
IE では、offsetHeight はブラウザの表示領域 (端を含む) の高さでもあります
FF では、offsetHeight はページの特定のコンテンツの高さです
scrollHeight
IE では、scrollHeight ページの特定のコンテンツの高さであり、clientHeight
より小さい場合があります。FF では、scrollHeight は Web ページのコンテンツの高さですが、最小値は clientHeight
2 です。以下は、現在のページの高さを取得するためのクロスブラウザーのソリューションです。

コードをコピー コードは次のとおりです。

function getPageSize()
{
var body = document.documentElement;
var bodyOffsetHeight = 0;
var bodyScrollHeight = 0; [0, 0];
pageDimensions[0]=body.clientHeight;
bodyOffsetWidth=body.offsetWidth; >bodyScrollWidth= body.scrollWidth;
bodyScrollHeight = body.scrollHeight;
if(bodyOffsetHeight > pageDimensions[0])
{
pageDimensions[0]=bodyOffsetHeight; if(bodyOffsetWidth > pageDimensions[1])
{
pageDimensions[1]=bodyOffsetWidth;
}
if(bodyScrollHeight > pageDimensions[0])
{
pageDimensions[ 0]= bodyScrollHeight;
if(bodyScrollWidth > pageDimensions[1])
{
pageDimensions[1]=bodyScrollWidth;
return pageDimensions;



3. div をマスク レイヤーとしてページに配置する必要があります。このマスク レイヤーの CSS スタイルは次のとおりです。





コードをコピー

コードは次のとおりです:
.lockDiv
{
4.クライアント上で以下の JavaScript を使用して、ページ全体をマスク レイヤーで囲みます。





コードをコピーします


コードは次のとおりです。 🎜>var timeHdl;
function DisablePage()
{
var ctrlSandglass = document.getElementById("divSandglass");
if(sandglassSpan==0)
{
ウィンドウ。 clearTimeout(timeHdl );
ctrlSandglass.style.display = "none"; sandglassSpan = 1; >{ document.body.style.cursor = 'wait';
var pageDimensions = getPageSize();
ctrlSandglass.style.left = 0; 🎜>ctrlSandglass .style.height = pageDimensions[0]; ctrlSandglass.style.width = pageDimensions[1]; ctrlSandglass.style.display = "block" timeHdl = window.setTimeout(DisablePage) ,200) ; } }

5. ASP.net Validator コントロールがページで使用されている場合は、次の JavaScript を使用する必要があります。





コードをコピーします


コードは次のとおりです。 🎜>var timeHdl;
function DisablePageHaveValidator()
{
var ctrlSandglass = document.getElementById("divSandglass")
if(false == Page_IsValid)
{
sandglassSpan = 0;
}
if(sandglassSpan==0)
{
window.clearTimeout(timeHdl);
ctrlSandglass.style.display = "none"; style.cursor = 'auto';
sandglassSpan = 1;
else
{
document.body.style.cursor = 'wait'; = "ブロック ";
var pageDimensions = getPageSize();
ctrlSandglass.style.left = 0; ; ctrlSandglass.style.width = pageDimensions[1]; timeHdl = window.setTimeout(DisablePageHaveValidator, 200);
}
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート