ここにはstabがあります。必要に応じて調整することができる基本的な概念を示します。
あなたはちょうどオフセットを計算してからng-style
とng-class
を使って遷移させます。calculatePosition
変数を設定してmoveMeを実装する必要があります。私は怠け者だからjqueryを使いました。
function moveMe(target){
//do caclculation here:
var clickMe = $('.clickMe');
var target = $('.targetMe');
var left = target.offset().left - clickMe.offset().left;
var top = target.offset().top - clickMe.offset().top;
$scope.calculatePosition = {
transform: 'translate(' + left + 'px,' + top + 'px)'
}
$scope.top = top;
$scope.left = left;
$scope.animate = true;
}
テンプレート:
<div class='container'>
<div class='button clickMe' ng-style="calculatePosition" ng-class="{animate: animate}" ng-click="moveMe()">
Div 1
</div>
<div class='button targetMe'>
Div 2
</div>
</div>
出典
2016-09-23 12:40:50
Nix
はDIV2固定されていますか?または、ページ上の異なる場所に表示されますか?あなたがフィドルをセットアップすれば、私はあなたを助けることができると確信しています。 – Nix
Div2はデバイスの幅と高さに応じて異なる場所に配置されます。 –