![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
レイヤーを使用して入力補助を作成しようと思っています。
大まかにはできたのですが、
入力補助用のレイヤーを表示したあと、
全然関係ないところをクリックした時に
レイヤーを閉じさせたいのですが実装イメージが
分かりません。
動き的には以下のページにあるような形にしてみたいです。
http://javascript.maxux.com/js037.htm
以下のページはdojoを使用しており、
具体的な処理はちょっと追いきれなかったので
考え方を教えていただけたらと思います。
どうぞ宜しくお願い致します。
No.2ベストアンサー
- 回答日時:
よく考えたら、オブジェクトを作ったり削除したりせずに、見せたり隠したりで
十分ですね。
<head>
<script type="text/javascript">
window.onload=function(){
f0=document.getElementById("f0");
f0deleteflg=false;
selectedOject=new Object();
document.onmousedown=function(){
if(f0deleteflg) f0.style.display="none";
}
}
function hoge(obj){
selectedOject=obj;
f0.style.display="block";
f0.style.top=obj.offsetTop + 20;
f0.style.left=obj.offsetLeft;
}
</script>
<style type="text/css">
#f0{
display:none;
position:absolute;
z-Index:2;
}
.w150{
width:150px;
}
</style>
</head>
<body>
<form id="f0" onmouseover="f0deleteflg=false" onmouseout="f0deleteflg=true">
<select class="w150" onChange="selectedOject.value=this.value;this.selectedIndex=0;f0.style.display='none'">
<option value="">SELECT ONE</option>
<option value="1">test1</option>
<option value="2">test2</option>
<option value="3">test3</option>
<option value="4">test4</option>
</select>
</form>
<form>
<br>
<br>
<br>
<br>
<input class="w150" type="text" onClick="hoge(this)" onKeydown="f0.style.display='none'">
<input class="w150" type="text" onClick="hoge(this)" onKeydown="f0.style.display='none'"><br>
<input class="w150" type="text" onClick="hoge(this)" onKeydown="f0.style.display='none'">
<input class="w150" type="text" onClick="hoge(this)" onKeydown="f0.style.display='none'"><br>
</form>
</body>
ありがとうございます。
<form id="f0" onmouseover="f0deleteflg=false" onmouseout="f0deleteflg=true">
この発想が思いつかなかったです。大変スッキリしました。
どうもありがとうございます。
No.1
- 回答日時:
こんな感じでやってみては?
<head>
<script type="text/javascript">
layerdeleleflg=false;
function hoge(obj){
var div=document.createElement("div");
div.appendChild(document.createTextNode("test"));
div.id="newlayer";
obj.form.appendChild(div);
div.style.top=obj.offsetTop + 20;
div.style.left=obj.offsetLeft;
div.onmouseover=function(){layerdeleleflg=true;}
div.onmouseout=function(){layerdeleleflg=false;}
}
window.onload=function(){
document.onmousedown=function(){
var newlayer=document.getElementById("newlayer");
if(newlayer && !layerdeleleflg) newlayer.parentNode.removeChild(newlayer);
}
}
</script>
<style type="text/css">
#newlayer{
position:absolute;
width:100px;
height:100px;
border:1px solid #000;
background-Color:#ffc0c0;
z-Index:2;
}
</style>
</head>
<body>
<form>
<br>
<br>
<br>
<br>
<input type="text" onClick="hoge(this)"><input type="text" onClick="hoge(this)"><br>
<input type="text" onClick="hoge(this)"><input type="text" onClick="hoge(this)"><br>
</form>
</body>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Illustrator(イラストレーター) タブを2つ開いていている状態で右のタブのレイヤー1つを左のタブにインポート?することはできますでし? 1 2022/04/02 12:42
- Photoshop(フォトショップ) フォトショのcamera rawフィルター 1 2023/04/07 12:17
- 画像編集・動画編集・音楽編集 medibang paint を使っているのですが、 [画像をレイヤーとして開く]で写真をトレースし 2 2023/03/18 04:36
- AJAX 自作の地図をグーグルマップのようにしたい 3 2022/11/15 11:53
- Illustrator(イラストレーター) アイビスペイントについて質問です。 アイビスペイントXで例えば絵をレイヤーにわけて、右にずらそうとす 1 2022/03/24 22:58
- Photoshop(フォトショップ) Photoshopの画像が重すぎるので軽くしたいです 7 2022/05/13 20:13
- Photoshop(フォトショップ) Photoshopだと長方形ツールを使っても色が出ません。というか、レイヤーに表示されてすらいません 1 2022/08/06 23:31
- 画像編集・動画編集・音楽編集 daVinciResolveの再生プレビュー画面がカクつきます。 daVinciResolve18を 2 2023/01/20 01:35
- Photoshop(フォトショップ) Photoshop に代わるソフトはありますか? 5 2023/01/26 13:24
- 画像編集・動画編集・音楽編集 AfterEffectでのシャターの挙動がおかしい 1 2023/05/07 00:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
hiddenのvalueの値を変えたい
-
value.replaceがうまく動作しま...
-
テキストボックスに入力された...
-
プルダウン選択時、既に入力済...
-
CDOMailで本文テキストの文字コ...
-
jsで、配列内の文章を改行する...
-
value内に変数を入れたい
-
selectboxのoptionタグのvalue...
-
ラジオボタンと連動して文字列...
-
[Javascript]TEXTAREAで改行さ...
-
ユーザーフォームでの検索結果...
-
VBAをJavaScriptに変換したいです
-
フォームで入力した値を別のフ...
-
大量のselect要素のvalueを短い...
-
JavaScriptでセレクトボックス...
-
フォームの入力欄の未記入チェ...
-
jquery.cookie.jsを使用してい...
-
[C#]連想配列の中に配列を入れたい
-
日付選択のポップアップを今日...
-
visual sutudio2012でのコード...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
value内に変数を入れたい
-
hiddenのvalueの値を変えたい
-
javascriptでhiddenに二次元配...
-
複数のsubmitボタンで押された...
-
テキストボックスに入力された...
-
switchを使って四則演算のプロ...
-
VB.NET DateTimeの型について
-
クイズ作成:15個の問題から5個...
-
セレクトボックスの初期選択状...
-
C言語クイックソートの比較総回...
-
ラジオボタンの選択で解答・点...
-
子から親へチェックボックスの...
-
ラジオボタンと連動して文字列...
-
setIntervalの間隔を途中で変更...
-
JAVASCRIPTで、ボタンを押した...
-
sessionStorageを調べています。
-
クリックの度に加算していくには?
-
マクロ オブジェクト変数With...
-
3桁区切りのカンマをつけたい...
-
selectboxのoptionタグのvalue...
おすすめ情報