今回は、Vue.js で 画像 を自由にドラッグできるようにする方法を説明します。
メインのコードは次のとおりです: <template>
<p id="test_3">
<img src="../assets/img/photo.jpg" @mousedown="start" @mouseup="stop" @mousemove="move" :style="style">
</p>
</template>
<script>
export default{
data:function(){
return{
canDrag: false,
x0:0,
y0:0,
x1:0,
y1:0,
style:null
}
},
methods:{
start:function(e){
//鼠标左键点击
if(e.button==0){
this.canDrag=true;
//记录鼠标指针位置
this.x0=e.clientX;
this.y0=e.clientY;
}
},
stop:function(e){
this.canDrag=false;
},
move:function(){
if(this.canDrag==true){
this.x1=e.clientX;
this.y1=e.clientX;
let x=this.x1-this.x0;
let y=this.y1-this.y0;
let img=document.querySelector("#test_3 img");
this.style=`left:${img.offsetLeft+x}px;top:${img.offsetTop+y}px`;
this.x0=this.x1;
this.y0=this.y1;
}
}
}
}
</script>
推奨書籍:
vue で xe-utils を使用する方法 vue-router のビルド時にルーティング ページが表示されない場合の対処方法以上がVue.jsで画像を自由にドラッグさせる方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。