私は、ユーザーがページに配置するためにいくつかのデータを入力できるようにするポップアップダイアログボックスコンポーネントを定義しています。最終結果は、画面上のボタンがクリックされたときに表示され、ページの周りをドラッグすることもできます。私はここに、まだこのコンポーネントの多くを持っていないドラッグしてページの周りのコンポーネントを移動しますか?
はそれのためのコードです:
//edit-global-names-dialog-box.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'edit-global-names-dialog-box',
templateUrl: './edit-global-names-dialog-box.component.html',
styleUrls: ['./edit-global-names-dialog-box.component.css']
})
export class EditGlobalNamesDialogBoxComponent implements OnInit{
constructor() {}
ngOnInit() {
}
}
//edit-global-names-dialog-box.component.html
<div id="dialog-box-container">
<div id="header">
</div>
<div id="content">
</div>
<div id="footer">
</div>
</div>
//edit-global-names-dialog-box.component.css
#dialog-box-container {
height: 12%;
width: 25%;
z-index: 2 !important;
position: absolute;
background-color: lightgrey;
right: 50%;
bottom: 50%;
transform: translate(45%,-50.1%);
-moz-box-shadow: 8px 8px 8px #d9d9d9;
-webkit-box-shadow: 8px 8px 8px #d9d9d9;
box-shadow: 8px 8px 8px #d9d9d9;
}
#header {
border: 0.5px solid dimgrey;
border-bottom: none;
height: 20%;
}
#content {
border: 0.5px solid dimgrey;
border-bottom: none;
height: 50%;
}
#footer {
border: 0.5px solid dimgrey;
height: 26%;
}
あなたは、現時点ではそれだけのテンプレートだと、他の全てのページの上に表示されるdiv要素を見ることができますコンテンツは、影を持ち、ページの中央に配置されます。
私は、ユーザーがダイアログボックスのheader
divをクリックしてドラッグすると、ダイアログボックス全体がページの周りを移動するという機能を実装したいと考えています。
私は以前に掲載いくつかの質問を見て撮影しています Using JS to move a div around the page Make Div Draggable using CSSこれらは純粋ジャバスクリプト、または私は角度とうまく噛み合うだろうわからない物事のはJQueryの方法を示唆しています。
コンポーネントをページの周りにドラッグできるようにするにはどうすればよいですか?
解決策の1つは、Javascriptを使用してonmousemoveイベントを取得し、次にポップアップdivをマウスの位置に設定することです。それは同時に複雑で簡単です。例を見せたいと思えば、私にそれを与えるのに数分かかるかもしれません。 –
@SimonHyll回答を例として投稿することができれば、それは素晴らしいことです。 – JavascriptLoser