js移动端 可移动滑块
document.addEventListener('DOMContentLoaded', function() {//动态创建回到首页domvar backDom = document.createElement("div");backDom.className = "z-back";backDom.innerHTML = '<a href="/"><svg class="icon-back" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="#ffffff" d="M879.461 517.238l-366.588-336.911-368.334 335.167c-6.983 6.983-6.983 17.457 0 24.441s17.457 6.983 24.441 0l343.894-314.219 343.894 314.219c3.492 3.492 6.983 5.238 12.219 5.238s8.726-1.745 12.219-5.238c5.238-5.238 5.238-15.712-1.745-22.695zM767.739 524.219c-10.474 0-17.457 6.983-17.457 17.457v267.084h-143.143v-186.784h-190.277v186.784h-143.143v-267.084c0-10.474-8.726-17.457-17.457-17.457-10.474 0-17.457 6.983-17.457 17.457v301.997h214.715v-186.784h118.704v186.784h214.715v-301.997c-1.745-10.474-8.726-17.457-19.202-17.457zM642.051 274.591h106.484v92.519c0 10.474 8.726 17.457 17.457 17.457 10.474 0 17.457-6.983 17.457-17.457v-127.433h-143.143c-10.474 0-17.457 6.983-17.457 17.457 1.745 8.726 10.474 17.457 19.202 17.457z" /></svg></a>';document.body.appendChild(backDom);//回到首页拖拽效果//获取屏幕宽高var screenW = window.screen.availWidth;var screenH = window.screen.availHeight;var dragBox = document.querySelector(".z-back");dragBox.addEventListener("touchstart", function(e) {var touch = e.touches[0];startX = touch.pageX;startY = touch.pageY;var left = getCss(dragBox, "left");var top = getCss(dragBox, "top");var width = getCss(dragBox, "width");var height = getCss(dragBox, "height");dragBox.addEventListener("touchmove", function(e) {e.preventDefault();var touch = e.touches[0];var x = touch.pageX - startX;var y = touch.pageY - startY;var nowLeft = left + x;var nowTop = top + y;//边界值处理if(x > 0){nowLeft = nowLeft > screenW - width ? screenW - width : nowLeft;}else{nowLeft = nowLeft > 0 ? nowLeft : 0;}if(y > 0){nowTop = nowTop > screenH - height ? screenH - height : nowTop;}else{nowTop = nowTop > 0 ? nowTop : 0;}dragBox.style.left = nowLeft + "px";dragBox.style.top = nowTop + "px";}, false);}, false);dragBox.addEventListener("touchend", function(e) {dragBox.removeEventListener("touchstart,touchmove,touchend", function() {});}, false) }, false);//获取元素样式 function getCss(curEle, attr) {var val = null,reg = null;if ("getComputedStyle" in window) {val = window.getComputedStyle(curEle, null)[attr];} else {if (attr === "opacity") {val = curEle.currentStyle["filter"];reg = /^alpha\(opacity=(\d+(?:\.\d+)?)\)$/i;val = reg.test(val) ? reg.exec(val)[1] / 100 : 1;} else {val = curEle.currentStyle[attr];}}reg = /^(-?\d+(\.\d+)?)(px|pt|rem|em)?$/i;return reg.test(val) ? parseFloat(val) : val; }
转载于:https://www.cnblogs.com/zhuzeliang/p/8385805.html
js移动端 可移动滑块相关推荐
- android h5 多图上传源码,JS移动端/H5同时选择多张图片上传并使用canvas压缩图片...
最近在做一个H5的项目,里边涉及到拍照上传图片的功能以及识别图片的功能,这里对识别图片的功能不做赘述,不属本文范畴.我在做完并上线项目后,同事跟我提了一个要求是可不可以同时选择多张图片上传,我做的时候 ...
- 手机端html5展示pdf,pdf.js移动端展示预览打开pdf-pdfh5.js
pdf.js移动端展示预览打开pdf-pdfh5.js 本插件基于pdf.js和jQuery,可手势捏合缩放,支持懒加载(即分段加载). 2019.07.18更新:增加npm install pdfh ...
- rds基于什么开发_为什么不学基于TypeScript的Node.js服务端开发?
为什么不学?学不动了吗?!别躺下啊,我扶你起来! 我们早就知道,如今的JavaScript已经不再是当初那个在浏览器网页中写写简单的表单验证.没事弹个alert框吓吓人的龙套角色了.借助基于v8引擎的 ...
- animate inater插件_基于animate.css动画库的全屏滚动小插件,适用于vue.js(移动端、pc)项目...
功能简介 基于animate.css动画库的全屏滚动,适用于vue.js(移动端.pc)项目. 安装 npm install vue-animate-fullpage --save 使用 main.j ...
- vue手机端项目php,MintUI基于Vue.js移动端组件库详解
Mint UI 包含丰富的 CSS 和 JS 组件,能够满足日常的移动端开发需要.接下来通过本文给大家分享Mint UI 基于 Vue.js 移动端组件库,需要的朋友参考下吧,希望能帮助到大家. 官网 ...
- 服务器项目混淆,压缩和混淆node.js服务端代码
压缩和混淆node.js服务端代码 在前端我们有webpack,gulp等构建工具提供了从项目结构搭建到部署打包,基本所有工作流程所需要的都被覆盖到了. 在后台node.js写的服务端却是透明,很多时 ...
- 有了这套flexible.js 移动端自适应方案,你就能在移动端的来去自如, (*^__^*)
flexible.js 移动端自适应方案 一,flexible.js 的使用方式: github地址:https://github.com/amfe/lib-flexible 官方文档地址:https ...
- node.js服务端笔记文档学会写接口,学习分类:path、包、模块化、fs、express、中间件、jwt、开发模式、cors。
node.js 学习笔记 node.js服务端笔记文档学会写接口,path.包.模块化.fs.express.中间件.JWT.开发模式.cors. gitee:代码接口笔记 1什么是node.js n ...
- 压缩和混淆node.js服务端代码
压缩和混淆node.js服务端代码 在前端我们有webpack,gulp等构建工具提供了从项目结构搭建到部署打包,基本所有工作流程所需要的都被覆盖到了. 在后台node.js写的服务端却是透明,很多时 ...
- Vuex 数据流管理及Vue.js 服务端渲染(SSR)
Vuex 数据流管理及Vue.js 服务端渲染(SSR)项目见:https://github.com/smallSix6/fed-e-task-liuhuijun/tree/master/fed-e- ...
最新文章
- Java知多少(中)
- WCF中常见的几种Host,承载WCF服务的方法详解
- docker 离线安装 mysql_docker 离线安装
- 位操作:BitVector32结构 z
- 机器学习(一)梯度下降算法
- kafka reassign 限速_RabbitMQ 与 Kafka 的技术差异以及使用注意点
- boost::exchange的测试程序
- python之提升程序性能的解决方案
- 在Ubuntu 18.04上安装Nginx
- 绝对经典英语学习资料
- 【设计模式】-工厂模式->简单工厂模式(源码与类图解析)
- 算法图解————K 近邻算法
- 常见的图标库有哪些?
- 04Selenium剩余部分及练习:爬取京东商品信息
- 微信支付--预支付(统一下单)
- 2022-2027年中国稻壳提纯硅产品市场竞争态势及行业投资前景预测报告
- 计算机毕业设计基于ssh学生请假管理系统
- 数学基础-概率论01(离散型分布)
- java群发邮件_JAVA邮件群发 - Java-Android-jwebee - BlogJava
- 花之语第十四期:萱草花
热门文章
- 调优jvm需要修改什么文件_JVM性能调优:基本概念介绍
- 计算机网络—4运输层(TCP连接管理、流量控制、拥塞控制)
- 服务器迁入虚拟主机的好处,服务器迁入虚拟主机的好处
- BZOJ3673/3674:可持久化并查集
- myeclipse下加VSS版本控制插件
- 博为峰Java技术文章 ——JavaSE Swing焦点事件的处理
- 当你想对常用网站定制属于自己的颜色,然而又没人理你怎么办
- com.alibaba.dubbo.rpc.RpcException: Since you are
- 終級方案之封USB設備必殺技
- Apache/MySQL/PHP 集体升级