|
@@ -33,8 +33,8 @@
|
|
|
<!-- windows phone 点击无高 -->
|
|
|
<meta name="msapplication-tap-highlight" content="no">
|
|
|
<link rel="stylesheet" type="text/css" href="css/WXtrialInterface.css" />
|
|
|
- <link rel="stylesheet" href="https://cdn.bootcss.com/weui/1.1.3/style/weui.min.css">
|
|
|
- <link rel="stylesheet" href="https://cdn.bootcss.com/jquery-weui/1.2.1/css/jquery-weui.min.css">
|
|
|
+ <link rel="stylesheet" href="https://cdn.bootcss.com/weui/1.1.3/style/weui.min.css" />
|
|
|
+ <link rel="stylesheet" href="https://cdn.bootcss.com/jquery-weui/1.2.1/css/jquery-weui.min.css" />
|
|
|
</head>
|
|
|
|
|
|
<body class="scroll h-player" style="overscroll-behavior: contain;">
|
|
@@ -61,7 +61,7 @@
|
|
|
<img src="../static/img/wx/shangchuan_icon.png">
|
|
|
<div>上传</div>
|
|
|
</div>
|
|
|
- <div class="upload" onclick="cp(document.getElementById('user_ref_id'));" data-text="Shearplate">
|
|
|
+ <div class="upload" onclick="showShearPlate()" data-text="Shearplate">
|
|
|
<img src="../static/img/wx/jianqieban_icon.png">
|
|
|
<div>剪切板</div>
|
|
|
</div>
|
|
@@ -88,29 +88,17 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="mainbox" style="display: none;">
|
|
|
- <div class="boxTitle">提示</div>
|
|
|
- <div class="boxText">
|
|
|
- <div>由于小程序的功能限制,此功能暂时</div>
|
|
|
- <div>无法使用,请下载APP使用更多功能</div>
|
|
|
- </div>
|
|
|
- <div class="boxbt" onclick="cp(document.getElementById('user_ref_id'));">立即前往下载</div>
|
|
|
- <div class="boximg"><img src="../static/img/wx/guanbi_icon.png"></div>
|
|
|
- </div>
|
|
|
- <div class="sbox" style="display: none;">
|
|
|
- <div class="sboxText">下载地址已复制到剪切板</div>
|
|
|
- <div class="sboxbu">确定</div>
|
|
|
- </div>
|
|
|
<div class="loading"></div>
|
|
|
</div>
|
|
|
+ <div class="mask">
|
|
|
+ <div class="box-shear-plate"></div>
|
|
|
+ <img class="close" onclick="handleClose()" src="img/guanbi_icon@2x.png" alt="">
|
|
|
+ </div>
|
|
|
<div class="weui-mask_transparent"></div>
|
|
|
<div class="weui-toast weui_loading_toast weui-toast--visible">
|
|
|
<div class="weui_loading"><i class="weui-loading weui-icon_toast"></i></div>
|
|
|
<p class="weui-toast_content">数据加载中</p>
|
|
|
</div>
|
|
|
- <div id="copy-txt" style="position: absolute;opacity: 0;">
|
|
|
- <span id="user_ref_id">www.androidsCloud.com</span>
|
|
|
- </div>
|
|
|
<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script>
|
|
|
<script type="text/javascript" src="jquery-1.11.0.min.js"></script>
|
|
|
<!-- ffm软解 -->
|
|
@@ -120,7 +108,84 @@
|
|
|
<script type="text/javascript" src="webgl.js"></script>
|
|
|
<script type="text/javascript" src="https://cdn.bootcss.com/vConsole/3.2.0/vconsole.min.js"></script>
|
|
|
<script type="text/javascript" src="WXdraw.js?id=105"></script>
|
|
|
+ <script type="text/javascript">
|
|
|
+ $(function () {
|
|
|
+ //手指滑动多少距离就认为是滑成功
|
|
|
+ //这个值不能太大,否则影响斜着滑动时,垂直滑动的流畅性,也不能太小,太灵敏也不好
|
|
|
+ var diffXDistance = 50;
|
|
|
|
|
|
+ //当前滑动的对象
|
|
|
+ var currentObject;
|
|
|
+ //上一次滑动的对象
|
|
|
+ var lastObject;
|
|
|
+
|
|
|
+ //是否可以左右滑动,在上下滑的时候禁止左右滑
|
|
|
+ var canSlide = true;
|
|
|
+ //用于记录按下的点
|
|
|
+ var startPoint;
|
|
|
+
|
|
|
+
|
|
|
+ $(".slide-content").css({
|
|
|
+ width: $(".slide-wrapper").width()
|
|
|
+ });
|
|
|
+
|
|
|
+ $(".slide-scroll").css({
|
|
|
+ width: $(".slide-wrapper").width() + $(".slide-content-button").width()
|
|
|
+ })
|
|
|
+ .on('touchstart', function (e) {
|
|
|
+ currentObject = this;
|
|
|
+
|
|
|
+ startPoint = {
|
|
|
+ x: e.originalEvent.changedTouches[0].pageX,
|
|
|
+ y: e.originalEvent.changedTouches[0].pageY
|
|
|
+ };
|
|
|
+ })
|
|
|
+ .on('touchmove', function (e) {
|
|
|
+ //如果是左右滑动,就禁止上下的滑动
|
|
|
+ //如果是上下的滑动,就禁止左右滑动
|
|
|
+ if (Math.abs(e.originalEvent.changedTouches[0].pageX - startPoint.x) > Math.abs(e.originalEvent.changedTouches[0].pageY - startPoint.y)) {
|
|
|
+ event.preventDefault();
|
|
|
+ } else {
|
|
|
+ canSlide = false;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .on('touchend', function (e) {
|
|
|
+ //如果是上下滑动,这里就直接返回了
|
|
|
+ if (!canSlide) {
|
|
|
+ canSlide = true;
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
+ //点击除当前左滑对象之外的任意其他位置
|
|
|
+ if (lastObject && currentObject != lastObject) {
|
|
|
+ //右滑→
|
|
|
+ $(lastObject).removeClass("animate-slide");
|
|
|
+
|
|
|
+ //清空上一个左滑的对象
|
|
|
+ lastObject = undefined;
|
|
|
+ }
|
|
|
+
|
|
|
+ var diffX = e.originalEvent.changedTouches[0].pageX - startPoint.x;
|
|
|
+ if (diffX < -diffXDistance) {
|
|
|
+ //左滑←
|
|
|
+ $(currentObject).addClass("animate-slide");
|
|
|
+ if (lastObject && lastObject != currentObject) {
|
|
|
+ //右滑→
|
|
|
+ $(lastObject).removeClass("animate-slide");
|
|
|
+ }
|
|
|
+ //记录上一个左滑的对象
|
|
|
+ lastObject = currentObject;
|
|
|
+ } else if (diffX >= diffXDistance) {
|
|
|
+ if (currentObject == lastObject) {
|
|
|
+ //右滑→
|
|
|
+ $(currentObject).removeClass("animate-slide");
|
|
|
+ //清空上一个左滑的对象
|
|
|
+ lastObject = undefined;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ });
|
|
|
+ </script>
|
|
|
<script>
|
|
|
var topwinHeight = window.screen.height - window.innerHeight + 30; //计算title top 头部
|
|
|
var renderCount = 0
|
|
@@ -180,11 +245,10 @@
|
|
|
$('#btnMuted').hide()
|
|
|
|
|
|
form.id = parameters['id'];
|
|
|
- form.username = parameters['username'];
|
|
|
form.ip = parameters['ip'];
|
|
|
form.userCardId = parameters['userCardId'];
|
|
|
} else {
|
|
|
- form.username = parameters['username'];
|
|
|
+ form.id = parameters['id'];
|
|
|
form.userCardId = parameters['userCardId'];
|
|
|
}
|
|
|
|
|
@@ -196,6 +260,179 @@
|
|
|
passive: false
|
|
|
})
|
|
|
|
|
|
+ var cutList = [];
|
|
|
+ function showShearPlate() {
|
|
|
+ $('.box-shear-plate').empty();
|
|
|
+ $.ajax({
|
|
|
+ url: baseUrl + "/api/user/v1/shear/content",
|
|
|
+ data: {},
|
|
|
+ headers: {
|
|
|
+ 'Authorization': form.id //id
|
|
|
+ },
|
|
|
+ type: 'get',
|
|
|
+ dataType: 'json',
|
|
|
+ success: function (res) {
|
|
|
+ if (res.status === 0) {
|
|
|
+ if (res.data.length) {
|
|
|
+ cutList = res.data
|
|
|
+ var str = '<div class="title">剪贴板<div onclick="handleClear()" class="btn-clear">清空</div></div><div class="slide-wrapper-content">'
|
|
|
+ res.data.forEach(function (item) {
|
|
|
+ str += "<div class='slide-wrapper'><div class='slide-scroll animate-slide-start'><div class='slide-content'><div onclick='handleCopy(\"" + item.content + "\")'>" + item.content + "</div></div><div class='slide-content-button'><button onclick='handleDelete(" + item.id + ")'>删除</button></div></div></div>"
|
|
|
+ })
|
|
|
+ str += '</div>'
|
|
|
+ $('.box-shear-plate').append(str);
|
|
|
+ } else {
|
|
|
+ $('.box-shear-plate').append('<img class="empty" src="img/jianqieban_pic@2x.png" alt="" /><div class="empty-txt">剪切板为空</div>')
|
|
|
+
|
|
|
+ }
|
|
|
+ $('.mask').show();
|
|
|
+ initSlider();
|
|
|
+ } else {
|
|
|
+ $('.mask').show();
|
|
|
+ initSlider();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ // 清空剪切板
|
|
|
+ function handleClear() {
|
|
|
+ var ids = '';
|
|
|
+ cutList.forEach(function (item) {
|
|
|
+ ids += 'ids=' + item.id + '&'
|
|
|
+ });
|
|
|
+ ids = ids.substring(0, ids.lastIndexOf('&'));
|
|
|
+ $.confirm("确定清空剪切板?", function () {
|
|
|
+ $.ajax({
|
|
|
+ url: baseUrl + "/api/user/v1/shear/content?" + ids,
|
|
|
+ headers: {
|
|
|
+ 'Authorization': form.id //id
|
|
|
+ },
|
|
|
+ type: 'DELETE',
|
|
|
+ dataType: 'json',
|
|
|
+ success: function (res) {
|
|
|
+ if (res.status === 0) {
|
|
|
+ showShearPlate();
|
|
|
+ } else {
|
|
|
+ $.toast(res.msg, "text");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ function handleCopy(content) {
|
|
|
+ $.ajax({
|
|
|
+ url: baseUrl + "/api/wsi/v1/config/cut",
|
|
|
+ data: JSON.stringify({
|
|
|
+ str: content,
|
|
|
+ sn: form.sn
|
|
|
+ }),
|
|
|
+ headers: {
|
|
|
+ 'Authorization': form.id //id
|
|
|
+ },
|
|
|
+ contentType: "application/json;charset=UTF-8",
|
|
|
+ type: 'post',
|
|
|
+ dataType: 'json',
|
|
|
+ success: function (res) {
|
|
|
+ if (res.status === 0) {
|
|
|
+ $.toast('复制成功', "text");
|
|
|
+ } else {
|
|
|
+ $.toast(res.msg, "text");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ // 删除剪切板
|
|
|
+ function handleDelete(id) {
|
|
|
+ $.ajax({
|
|
|
+ url: baseUrl + "/api/user/v1/shear/content?ids=" + id,
|
|
|
+ headers: {
|
|
|
+ 'Authorization': form.id //id
|
|
|
+ },
|
|
|
+ type: 'DELETE',
|
|
|
+ dataType: 'json',
|
|
|
+ success: function (res) {
|
|
|
+ if (res.status === 0) {
|
|
|
+ showShearPlate();
|
|
|
+ } else {
|
|
|
+ $.toast(res.msg, "text");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ function initSlider() {
|
|
|
+ //手指滑动多少距离就认为是滑成功
|
|
|
+ //这个值不能太大,否则影响斜着滑动时,垂直滑动的流畅性,也不能太小,太灵敏也不好
|
|
|
+ var diffXDistance = 50;
|
|
|
+ //当前滑动的对象
|
|
|
+ var currentObject;
|
|
|
+ //上一次滑动的对象
|
|
|
+ var lastObject;
|
|
|
+ //是否可以左右滑动,在上下滑的时候禁止左右滑
|
|
|
+ var canSlide = true;
|
|
|
+ //用于记录按下的点
|
|
|
+ var startPoint;
|
|
|
+ $(".slide-content").css({
|
|
|
+ width: $(".slide-wrapper").width()
|
|
|
+ });
|
|
|
+ $(".slide-scroll").css({
|
|
|
+ width: $(".slide-wrapper").width() + $(".slide-content-button").width()
|
|
|
+ })
|
|
|
+ .on('touchstart', function (e) {
|
|
|
+ currentObject = this;
|
|
|
+
|
|
|
+ startPoint = {
|
|
|
+ x: e.originalEvent.changedTouches[0].pageX,
|
|
|
+ y: e.originalEvent.changedTouches[0].pageY
|
|
|
+ };
|
|
|
+ })
|
|
|
+ .on('touchmove', function (e) {
|
|
|
+ //如果是左右滑动,就禁止上下的滑动
|
|
|
+ //如果是上下的滑动,就禁止左右滑动
|
|
|
+ if (Math.abs(e.originalEvent.changedTouches[0].pageX - startPoint.x) > Math.abs(e.originalEvent.changedTouches[0].pageY - startPoint.y)) {
|
|
|
+ event.preventDefault();
|
|
|
+ } else {
|
|
|
+ canSlide = false;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .on('touchend', function (e) {
|
|
|
+ //如果是上下滑动,这里就直接返回了
|
|
|
+ if (!canSlide) {
|
|
|
+ canSlide = true;
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
+ //点击除当前左滑对象之外的任意其他位置
|
|
|
+ if (lastObject && currentObject != lastObject) {
|
|
|
+ //右滑→
|
|
|
+ $(lastObject).removeClass("animate-slide");
|
|
|
+
|
|
|
+ //清空上一个左滑的对象
|
|
|
+ lastObject = undefined;
|
|
|
+ }
|
|
|
+ var diffX = e.originalEvent.changedTouches[0].pageX - startPoint.x;
|
|
|
+ if (diffX < -diffXDistance) {
|
|
|
+ //左滑←
|
|
|
+ $(currentObject).addClass("animate-slide");
|
|
|
+ if (lastObject && lastObject != currentObject) {
|
|
|
+ //右滑→
|
|
|
+ $(lastObject).removeClass("animate-slide");
|
|
|
+ }
|
|
|
+ //记录上一个左滑的对象
|
|
|
+ lastObject = currentObject;
|
|
|
+ } else if (diffX >= diffXDistance) {
|
|
|
+ if (currentObject == lastObject) {
|
|
|
+ //右滑→
|
|
|
+ $(currentObject).removeClass("animate-slide");
|
|
|
+ //清空上一个左滑的对象
|
|
|
+ lastObject = undefined;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
// 初始化一下就可以了,
|
|
|
var vConsole = new VConsole();
|
|
|
|
|
@@ -376,6 +613,10 @@
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ function handleClose() {
|
|
|
+ $('.mask').hide();
|
|
|
+ }
|
|
|
+
|
|
|
function cp(x) {
|
|
|
$(".mainbox").css({
|
|
|
"display": "none"
|