欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

微信小程序中怎么制作圖片拖拽功能-創(chuàng)新互聯(lián)

這篇文章主要介紹微信小程序中怎么制作圖片拖拽功能,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

在壺關(guān)等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站制作、成都做網(wǎng)站 網(wǎng)站設(shè)計(jì)制作按需定制制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站建設(shè),營銷型網(wǎng)站建設(shè),外貿(mào)網(wǎng)站建設(shè),壺關(guān)網(wǎng)站建設(shè)費(fèi)用合理。

1.編寫頁面結(jié)構(gòu):moveimg.wxml

<view class="container" style="height:{{screenHeight}}px;" >
	<view class="cnt">
		<image class="image-style" src="../uploads/2.jpg" style="width:
		{{imgwidth}}px;height:{{imgheight}}px;"bindtouchstart="startEvent"
		 bindtouchmove="moveEvent"bindload="imageLoad"animation="
		 {{animationData}}"bindtouchend="endEvent">
		</image>
	</view>
</view>

2.編寫頁面樣式:moveimg.wxss

.container {
    box-sizing:border-box;
    padding:1rem;
} 
.cnt{
    width:100%;
    height:70%;
    border: 1px solid #ccc;
    position:relative;
    overflow: hidden;
    z-index:9999;
}
.image-style{
	-webkit-transform:translate(-38px,0px);  
}

3.設(shè)置數(shù)據(jù):moveimg.js

var app = getApp()
Page({
	data: {
    	imgwidth:0,
    	imgheight:0,
    	animationData: {},
    	movex:0,
    	movey:0,
    	x:0,
    	y:0,
	},
	onLoad: function() {
		 // 頁面初始化 options為頁面跳轉(zhuǎn)所帶來的參數(shù)
		var _this = this;
		wx.getSystemInfo({
			success: function(res) {
				_this.setData({
					screenHeight: res.windowHeight,
					screenWidth: res.windowWidth,
				});
			}
		});
	},
	onReady:function(){
	    // 頁面渲染完成
	    //實(shí)例化一個(gè)動畫
	    this.animation = wx.createAnimation({
	    	duration: 1000, 
	    	timingFunction: 'linear',//均勻
	    	transformOrigin: "left top 0px",
	    })
	},
	imageLoad: function(e) {  
        var _this=this; 
        //1.框的寬高
        var cnt_offetw=_this.data.screenWidth-38,
        	cnt_offeth=(_this.data.screenHeight-38)*0.7;
        //2.獲取圖片真實(shí)寬度
        var $width=e.detail.width,    //獲取圖片真實(shí)寬度  
            $height=e.detail.height,  
            ratio=$width/$height;   //圖片的真實(shí)寬高比例
       	//3.進(jìn)行判斷:當(dāng)圖片小于框時(shí)候,圖片大小等于框大小,當(dāng)大于框的時(shí)候,則成比例呈現(xiàn)
       	var viewWidth=_this.data.screenWidth;           //設(shè)置圖片固定寬度值,  
        var	viewHeight=parseInt(viewWidth/ratio);    //計(jì)算的高度值
     	if (viewHeight< cnt_offeth) {
            viewHeight=cnt_offeth;
        }
        _this.setData({ 
            imgwidth:viewWidth,  
            imgheight:viewHeight,
            cnt_boxw:cnt_offetw,
            cnt_boxh:cnt_offeth,
        })
    },
    startEvent:function(e){
    	//1.獲取鼠標(biāo)點(diǎn)擊下去的
    	this.setData({
	     	startx: e.touches[0].pageX,
	      	starty: e.touches[0].pageY
	    })
    },
    moveEvent: function(e) { 
		var _this=this;
		//2.鼠標(biāo)移動的位置
		var pageX = e.touches[0].pageX;
		var pageY = e.touches[0].pageY;	
		var x,y;
		//3.記住初始化圖片x,y
		var endx=_this.data.x,endy=_this.data.y;
		//4.判斷
		var w_x=_this.data.imgwidth-_this.data.cnt_boxw;//x拖拽值:圖片寬-框的寬
		var h_y=parseInt(_this.data.imgheight-_this.data.cnt_boxh);//y拖拽值:圖片高-框高
		var DistanceX = pageX - _this.data.startx;//x:當(dāng)鼠標(biāo)點(diǎn)擊到移動的點(diǎn)之間的距離
		var DistanceY =pageY - _this.data.starty;//y:當(dāng)鼠標(biāo)點(diǎn)擊到移動的點(diǎn)之間的距離
		if (DistanceX>0){
			//往右移動 如果當(dāng)前的值大于等于0時(shí)則不移動,否則當(dāng)前值加上鼠標(biāo)拖拽的距離
			if (endx >= 0) {
		        x = 0;
		    } else {
		        x = endx + DistanceX;
		    }
	    }else{
	    	//往左移動:x拖拽值大于等于當(dāng)前的值,說明已經(jīng)到邊上了,就等于拖拽值,否則當(dāng)前的值加上鼠標(biāo)拖拽的距離
			if (w_x >= endx) {
		        x = -w_x;
		    } else {
		        x = endx + DistanceX;
		    }
	    }
	    if (DistanceY>0){
	    	//往下移動:如果當(dāng)前的值大于等于0時(shí)則不移動,否則當(dāng)前值加上鼠標(biāo)拖拽的距離
			if(endy>=0){
				y =0;
		    }else{
		        y = endy + DistanceY;
		    }
	    }else{
	    	//往上移動:y拖拽值大于等于當(dāng)前的值,說明已經(jīng)到邊上了,就等于拖拽值,否則當(dāng)前的值加上鼠標(biāo)拖拽的距離
	    	if(-endy==h_y||-endy>h_y){
	    		y=-h_y;
	    		console.log("da0")
	    	}else{
	    		y=endy+DistanceY;
	    		console.log("da 1")
	    	}
	 	}
   		setTimeout(function() {
	      	_this.animation.translate(x, y).step();
			_this.setData({
	       		animationData: this.animation.export()
	   		})
	    }.bind(this), 0)

	    _this.setData({
	    	x:x,
	    	y:y,
	    }) 
	    endx=x;endy=y;//記住這次的圖片移動的范圍
	    _this.data.startx=pageX;_this.data.starty=pageY;// 每移動一次把上一次的點(diǎn)作為原點(diǎn)
    },
    endEvent:function(){
 		clearTimeout(function(){
    		this.animation.translate(this.data.x,this.data.y).step();
			this.setData({
	       		animationData: this.animation.export()
	   		})
     	});
    }
})

由于上次做的這個(gè)有問題,并沒有記錄上一次移動的效果。所以這次我使用了洪荒之力,修改下代碼。

以上是“微信小程序中怎么制作圖片拖拽功能”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

網(wǎng)頁標(biāo)題:微信小程序中怎么制作圖片拖拽功能-創(chuàng)新互聯(lián)
本文地址:http://aaarwkj.com/article38/jcdpp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站、ChatGPT定制開發(fā)、虛擬主機(jī)自適應(yīng)網(wǎng)站、搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管
欧美色欧美亚洲另类视频| 自偷自拍亚洲综合精品| 久久精品中文字幕有码日本道| 欧美国产日本日韩在线黄| 丰满人妻少妇精品一区二区三区| 一区二区三区毛片观看| 亚洲av毛片在线免费| 人妻少妇被粗大爽av| 国产精品国产三级国产专播| 日本在线精品在线观看| 91免费视频精品麻豆| 在线播放国内自拍情侣酒店| 扒开少妇毛茸茸的大荫萍蒂| 国产精品毛片一区内射| 亚洲人成网站18禁止人| 欧美精品一区二区三区黄片| 男人天堂插插综合搜索| 99久久精彩免费视频| 亚洲青青草原自拍偷拍| 国产av毛片一区二区| 在线观看永久免费黄色| 亚洲熟女av综合网丁香| 亚洲欧洲成熟熟女妇专区乱| 人人妻人人澡人人爱| 粉嫩一区二区三区av| 国产福利精品一区二区av| 欧美丰满老妇性猛交| 国产精品毛片一区二区三区| 成人黄色av免费在线观看| 在线看片国产精品自拍| 永久黄区观看在线网址| 欧美高清视频看片在线观看| 中文字幕日韩在线欧美一区| 久久婷亚洲综合五月天| 国产精品一区久久91| 99精品欧美日韩在线播放| 97免费公开在线观看| 亚洲乱码一区二区免费版| 91极品气质女神长腿翘臀| 青青草免费在线视频视频| 夫妻性生活免费的视频|