Informations・・・
■ JavaScript - exOpen() 他
exOpenSet.zip
・テスト用サンプルセット - 解凍したフォルダ内だけで完結する様構成。
※ 尚、動作とは関係無い上無駄に大きい為 CSSは同梱せず。 |
■ 此処で動作テスト
|
< >
20230323 000330
■ exOpenSet.js と 使用例(テストページの内容)・・・
■ exOpenSet.js
var arSubWindows;
var strRoot = '';
function BootSet()
{
var subWindow;
window.onunload = function()
{
arSubWindows.forEach(function(subWindow)
{
if (typeof subWindow != 'undefined')
{
subWindow.close();
}
});
}
}
function exOpen(strTarget, wTarget, wWidth, wHeight, wLeft, wTop)
{
let strURLset = strRoot + strTarget;
let wParam = 'location=yes,resizable=yes,scroll=yes,addonbar=yes,width='
+ wWidth + ', height=' + wHeight + ',top=' + wTop
+ ', left=' + wLeft;
if (typeof arSubWindows != 'undefined')
{
arSubWindows.push(window.open(strURLset, wTarget, wParam));
}
else
{
arSubWindows = [window.open(strURLset, wTarget, wParam)];
}
} |
◆ 用途によっては まだかなり省けるが、"Tipsの" サンプルとしては此れが限界か。
◆ 対象の見易さを優先する為、使用中の exOpen() から 代入された値のチェック 及び 省略時の既定値付与 等の処理は排除。 |
■ exOpenSet/index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<link rel="icon" href="../../../favicon.ico" type="image/vnd.microsoft.icon" />
<script src="exOpenSet.js"></script>
<title>exOpen() - JavaScriptTestSite</title>
</head>
<body class="CatalogView" onload="BootSet()">
<div>
<table><tbody>
<tr>
<td>
ThisPage - <input type="url" class="tbTest" id="ThisPage" name="ThisPage" value="index.html"/>
</td>
<td>
<input type="button" class="btnTest" value=" ← 此のページを子ウィンドウで開き直す " onClick="Javascript:exOpen(ThisPage.value, 'exOpenTestB', Wpx.value, Hpx.value, Xpos.value, Ypos.value);"/>
</td>
</tr>
</tbody></table>
</div>
<div>
<table><tbody>
<tr>
<td>
TargetPage - <input type="url" class="tbTest" id="tPage" name="tPage" value="Information/index.html"/>
</td>
<td>
<input type="button" class="btnTest" value=" ← テストページを子ウィンドウで開く(解説あり) " onClick="Javascript:exOpen(tPage.value, 'SubWindow', Wpx.value, Hpx.value, Xpos.value, Ypos.value);"/>
</td>
</tr>
</tbody></table>
</div>
<hr width="100%" color="#cdd4df" align="left" />
<div>
<table><tbody>
<tr>
<td>
Window・・・
</td>
</tr><tr>
<td>
・Width :
</td><td>
<input type="text" class="tbDefault" id="Wpx" name="Wpx" value="620"/>
</td>
</tr><tr>
<td>
・Height :
</td><td>
<input type="text" class="tbDefault" id="Hpx" name="Hpx" value="355"/>
</td>
</tr><tr>
<td>
・Left :
</td><td>
<input type="text" class="tbDefault" id="Xpos" name="Xpos" value="150"/>
</td>
</tr><tr>
<td>
・Top :
</td><td>
<input type="text" class="tbDefault" id="Ypos" name="Ypos" value="100"/>
</td>
</tr>
</tbody></table>
</div>
</body>
</html>
|
◆ 一部 "実運用では非推奨" とされる記述となっている、Tipsとは無関係な箇所であり あくまで扱い易い簡易サンプルと云う事で()
◆ Webサーバを用いないローカルで使用中のHTMLファイルから抜粋した為 一部 其の環境に合わせた無駄な記述アリ。
◆ classも cssが無いテスト向けのzip配布分では概ね無意味(挙動には影響無し)、一部は未使用対象は名称をダミー化。 |
< >
20230322 235843
MaintenanceInformation・・・
・・・CreateLog
< >
|