js实现图片滚轮、按钮缩放大小,图片旋转,图片拖拽

JavaScript024

js实现图片滚轮、按钮缩放大小,图片旋转,图片拖拽,第1张

<div class="upload-img-box" ref="moveWrap">

<div class="show-box" ref="rotate" @mousedown="moveImg" @mousewheel.prevent="rollImg($event,)">

<img :src="singleList.fileImgUrl" class="uploadimg" ref="img" :style="{transform:'scale('+multiples/100+') rotate('+rotate +'deg)'}"/>

</div>

<div class="img-plus" @click="toBIgChange()"><span class="tip">放大</span></div>

<div class="img-minus" @click="toSmallChange()"><span class="tip">缩小</span></div>

<div class="img-rotate" @click="toRotate()"><span class="tip">旋转</span></div>

</div>

用js控制图片额大小。主要是修改图片的宽度和高度。下面是简单的代码实现:

HTML 代码:

<img src='../1.jgp' id='img' />

这个时候img的图片自身是多大,就会显示多大。100px*100px的图。

js代码:

var oImg = document.getElementById('img')

oImg.width = '50px' //当给img标签的宽度设置为50px后,高度会自动按比例缩小。

oImg.width = '200px' //当给img标签的宽度设置为200px后,高度会自动按比例扩大。

讲一下大致思路吧,希望能帮到你

通常来说,元素id要求是唯一的,虽然不唯一也不会报错,但可能导致代码得不到你想要的效果。你在for循环里面定义了 id="blue2" 这是不合理的。

你不能在每个元素上统一设置 transform, 因为这样的话一变全都变了,区分不了。

for循环你能拿到索引 index,你可以根据index拿到当前展示的元素,那么 通过 index+1就能拿到下一个元素。注意,需要判断是否存在下一个元素

针对当前元素做缩小处理,下一个元素做放大处理。el.style.transform = 'scale()'

小程序的开发和原生js多多少少还是有些区别的,具体的情况需要你自己调试了。