Delete `␍` prettier/prettier Vue 可悬浮按钮
Delete `␍` prettier/prettier
代码格式化不一致,换行符冲突。UNIX/Linux 使用的是 0x0A(LF), DOS/Windows 一直使用 0x0D0A(CRLF) 作为换行符,git 默认配置了 autocrlf 为true,默认所有代码都会被提交成了crlf,或者开发者自己配置的autocrlf配置不一致。
修改git全局配置,禁止git自动将lf转换成crlf(提交检出均不转换)
git config --global core.autocrlf false
或者
git提交的时候,文件中的换行符必须是LF,如果不是不能提交。
# 提交时转换为LF,检出时不转换
git config --global core.autocrlf input # 拒绝提交包含混合换行符的文件
git config --global core.safecrlf true
删除对象属性(比delete强,不会改变引用地址)
Object.keys(state).forEach((key) => {
Reflect.deleteProperty(state, key);
});
将 stylus 转换成 scss
安装插件,插件github地址
npm install -g stylus-converter
文件目录处执行,指定输入输出文件名称
stylus-conver -i source.styl -o target.scss
文件目录父级执行,指定输入输出文件夹名称
stylus-conver -d yes -i source-path -o target-path
滚动时控制 CSS渐变
可人为控制 :屏幕慢慢滚动并在此过程中任意停留,在任意停留点中你可以看到当前渐变程度和效果,并且在你停留的这个点,渐变效果不会发生改变,当再次滚动时渐变程度才会有所变化。
原理:通过监听滚动的 scrollTop 值,在不同的 scrollTop值范围中,给元素对应设置不同的 opacity。opacity会导致子元素也不可见,可以定位两个同级的元素,下面的当背景显示渐变效果,上面的显示文字或 其他同事配合渐变效果。
不可控的:当页面滚动到某个值时就触发样式变化,就算停下滚动,也会自动渐变完整个效果。
原理:当页面滚动到某个值,就设置新的样式,并且通过transition做过度处理。
// 控制opacity z-index
const boxScroll = (e) => {
const top = e.target.scrollTop;
if (top === 0) {
targetEl.value.style["z-index"] = 0;
targetEl.value.style["opacity"] = 0;
}
if (top > 0 && top < 360) {
targetEl.value.style["z-index"] = 20;
targetEl.value.style["opacity"] = Number(top / 360).toFixed(2);
boxLive.value.style["opacity"] = 1 - Number(top / 360).toFixed(2);
}
if (top >= 360) {
targetEl.value.style["opacity"] = 1;
}
};
onscroll 事件无作用
height: 100vh;
overflow: auto;
可移动悬浮按钮
<template>
<div
class="fixed right-0 bottom-0 w-[3rem] h-[2rem]"
v-show="state.float"
@click="floatClick"
@touchstart="touchstart"
@touchmove.prevent="touchmove"
@touchend="touchend"
ref="floatBtn"
>
<img class="w-full h-full" src="../../../assets/images/search.png" alt="" />
</div>
</template> <script setup>
import { reactive, ref } from "vue"; const floatBtn = ref(null);
const state = reactive({
float: true,
flags: false,
position: {
x: 0,
y: 0,
},
nx: "",
ny: "",
dx: "",
dy: "",
xPum: "",
yPum: "",
}); const touchstart = (event) => {
console.log("移动中", event);
// floatBtn.value.style.transition = "none";
state.flags = true;
let touch;
if (event.touches) touch = event.touches[0];
else touch = event;
state.position.x = touch.clientX;
state.position.y = touch.clientY;
state.dx = floatBtn.value.offsetLeft;
state.dy = floatBtn.value.offsetTop;
};
const touchmove = (event) => {
console.log("移动中", event);
if (state.flags) {
let touch;
if (event.touches) touch = event.touches[0];
else touch = event;
state.nx = touch.clientX - state.position.x;
state.ny = touch.clientY - state.position.y;
state.xPum = state.dx + state.nx;
state.yPum = state.dy + state.ny;
//屏幕宽度减去⾃⾝控件宽度
let width = window.innerWidth - floatBtn.value.offsetWidth;
//屏幕⾼度减去⾃⾝控件⾼度
let height = window.innerHeight - floatBtn.value.offsetHeight;
state.xPum < 0 && (state.xPum = 0);
state.yPum < 0 && (state.yPum = 0);
state.xPum > width && (state.xPum = width);
state.yPum > height && (state.yPum = height);
floatBtn.value.style.left = state.xPum + "px";
floatBtn.value.style.top = state.yPum + "px";
}
};
const touchend = (event) => {
state.flags = false;
// floatBtn.value.style.transition = "all 0.3s";
};
</script>
Delete `␍` prettier/prettier Vue 可悬浮按钮的更多相关文章
- 在TableView上添加悬浮按钮
如果直接在TableVIewController上贴Button的话会导致这个会随之滚动,下面解决在TableView上实现位置固定悬浮按钮的两种方法: 1.在view上贴tableView,然后将悬 ...
- Android FloatingActionButton(FAB) 悬浮按钮
FloatingActionButton 悬浮按钮 ...
- Android用悬浮按钮实现翻页效果
今天给大家分享下自己用悬浮按钮点击实现翻页效果的例子. 首先,一个按钮要实现悬浮,就要用到系统顶级窗口相关的WindowManager,WindowManager.LayoutParams.那么在An ...
- 如何在TableView上添加悬浮按钮
如果直接在TableVIewController上贴Button的话会导致这个会随之滚动,下面解决在TableView上实现位置固定悬浮按钮的两种方法: 1.在view上贴tableView,然后将悬 ...
- (IOS)悬浮按钮Demo
思路:传入一个底层的view,将悬浮按钮(用view实现)和展开的子按钮列表add在其上,子按钮列表开始将坐标和悬浮按钮对应好后先将其隐藏,悬浮按钮识别到tap手势后触发展示子按钮列表的方法.通过在t ...
- 一个 Vue 的滑动按钮组件
git 地址:https://github.com/SyMind/vue-sliding-button vue-better-slider 一个 Vue 的滑动按钮组件,有关滑动方面的处理借鉴 bet ...
- Android 5.0新控件——FloatingActionButton(悬浮按钮)
Android 5.0新控件--FloatingActionButton(悬浮按钮) FloatingActionButton是5.0以后的新控件,一个悬浮按钮,之所以叫做悬浮按钮,主要是因为自带阴影 ...
- FloatingActionButtonDemo【悬浮按钮的使用,顺带snackBar的使用】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 FloatingActionButton简称FAB. 一. 对于App或某个页面中是否要使用FloatingActionButton ...
- FloatingActionButton(悬浮按钮)使用学习<一>
FloatingActionButton简称FAB. 一. 对于App或某个页面中是否要使用FloatingActionButton必要性: FAB代表一个App或一个页面中最主要的操 ...
- QSplitter实现滑动窗口和悬浮按钮
1 QSplitter实现滑动窗口和悬浮按钮 软件应用中需要设计右侧滑动窗口,通过一个按钮来实现窗口的隐藏和显示,应用场景比如显示主界面的详细信息. (1) 在qt design中 ...
随机推荐
- CF1744B Even-Odd Increments
简要题意 \(T\) 组数据,每组数据给定一个长度为 \(n\) 的数列,有 \(q\) 次操作,共有两种操作: \(\texttt{0 x}\),给数列中所有偶数加上 \(x\): \(\textt ...
- 51NOD5213A 【提高组/高分-省选预科 第一场【M】】序列
小 Y 酷爱的接龙游戏正是这样.玩腻了成语接龙之后,小 Y 决定尝试无平方因子二元合数接龙,规则如下: 现有 \(n\) 个不超过 \(K\) 的合数,每个合数 \(a\) 均可表示为 \(a=pq( ...
- MySQL 日期函数、时间函数在实际场景中的应用
整理日常业务中用到日期函数的一些场景,并对日期函数按照使用类型做了分类,实例也尽可能符合日常需求.为了方便查阅,可以先看目录,再根据需要看具体方法和实例. 首先明确日期和时间类型有哪些,也就是日期函数 ...
- vue打包---放到服务器下(一个服务器多个项目需要配置路径),以及哈希模式和历史模式的不同配置方法
哈希模式,好用,不需要服务器配合分配路径指向,自己单机就可以打开了 接下来上代码截图 接下来开始截图 历史模式 历史模式需要后端支持 打包后自己直接点击是打不开的 截图如下
- 如何使用 JuiceFS 创建 WebDAV 共享
WebDAV 是一种基于 HTTP 的文件共享协议,最初被设计用于多用户文档协作编辑的场景,也被广泛应用在基于互联网的文件存储.数据同步等网盘类应用场景. 手机端和 PC 端有大量的应用内置了对 We ...
- Boost线程处理机制
采自文章:https://www.cnblogs.com/renyuan/p/6613638.html 大多数共享数据的线程均采用 boost::mutex mtx; boost::condition ...
- 【学习笔记】C/C++ 设计模式 - 观察者模式
前言 估计 2020 年写应用程序的机会比较多,之前一直在做嵌入式驱动程序和Android系统定制方面的工作,在应用程序方面积累的不是很多,因此迫切需要多学学应用编程这方面的知识. 之前在写小的应用程 ...
- Deep Learning-Based Monocular Depth Estimation Methods-A State-of-the-Art Review
注:刚入门depth estimation,这也是以后的主要研究方向,欢迎同一个方向的加入QQ群(602708168)交流. 1. 论文简介 论文题目:Deep Learning-Based Mono ...
- Vue14 条件渲染
转:https://blog.csdn.net/weixin_57519185/article/details/121168426 1 简介 通过指令v-show和v-if可以实现条件渲染. 它们都能 ...
- Cesium计算多边形面积(十一)
//计算三角形面积 function triangleArea(p0, p1, p2) { let v0 = Cesium.Cartesian3.subtract(p0, p1, new Cesium ...