ホームページ  >  記事  >  ウェブフロントエンド  >  ドラッグ可能な JS ポップアップ div レイヤーの完全な例と Closed_JavaScript スキル

ドラッグ可能な JS ポップアップ div レイヤーの完全な例と Closed_JavaScript スキル

WBOY
WBOYオリジナル
2016-05-16 16:14:00960ブラウズ

この記事の例では、ドラッグして閉じることができる JS ポップアップ div レイヤーの完全な実装方法を説明します。皆さんの参考に共有してください。具体的な実装方法は以下の通りです。

コードをコピーします コードは次のとおりです:



<頭>

JS はドラッグ可能で閉じることができる div レイヤーをポップアップします
<スタイル>
html,body{高さ:100%;オーバーフロー:非表示;}
body,div,h2{マージン:0;パディング:0;}
ボディ{font:12px/1.5 タホマ;}
center{padding-top:10px;}
ボタン{カーソル:ポインタ;}
#win{position:absolute;top:50%;left:50%;width:400px;height:200px;background:#fff;border:4px Solid #f90;margin:-102px 0 0 -202px;display:none; }
h2{font-size:12px;height:18px;text-align:right;background:#FC0;border-bottom:3px Solid #f90;padding:5px;cursor:move;}
h2 スパン{カラー:#f90;カーソル:ポインター;背景:#fff;ボーダー:1px ソリッド #f90;パディング:0 2px;}

<スクリプト>
window.onload = function ()
{
var oWin = document.getElementById("win");
var oBtn = document.getElementsByTagName("ボタン")[0];
var oClose = document.getElementById("close");
var oH2 = oWin.getElementsByTagName("h2")[0];
var bDrag = false;
var disX = disY = 0;
oBtn.onclick = function ()
{
oWin.style.display = "ブロック"
};
oClose.onclick = function ()
{
oWin.style.display = "なし"

};
oClose.onmousedown = 関数 (イベント)
{
(イベント || window.event).cancelBubble = true;
};
oH2.onmousedown = 関数 (イベント)
{
var イベント = イベント || ウィンドウ.イベント;
bDrag = true;
disX = events.clientX - oWin.offsetLeft;
disY = イベント.clientY - oWin.offsetTop; this.setCapture && this.setCapture(); false を返す };
document.onmousemove = 関数 (イベント)
{
if (!bDrag) return;
var イベント = イベント || ウィンドウ.イベント;
var iL = events.clientX - disX;
var iT = events.clientY - disY;
var maxL = document.documentElement.clientWidth - oWin.offsetWidth;
var maxT = document.documentElement.clientHeight - oWin.offsetHeight
iL = iL iL = iL > maxL : iL; iT = iT iT = iT > maxT : iT;

oWin.style.marginTop = oWin.style.marginLeft = 0;
oWin.style.left = iL "px";
oWin.style.top = iT "px"; false を返す };
document.onmouseup = window.onblur = oH2.onlosecapture = function ()
{
bDrag = false; oH2.releaseCapture && oH2.releaseCapture();
};
};




×






この記事が皆様の JavaScript プログラミング設計に役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。