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中 ...
随机推荐
- [LeetCode]数组拆分 I
题目 代码 class Solution { public: int arrayPairSum(vector<int>& nums) { std::sort(nums.begin( ...
- (17)go-micro微服务Prometheus监控
目录 一 Prometheus监控介绍 1.微服务监控系统promethues介绍 2.微服务监控系统promethues工作流程 二 Prometheus监控重要组件和重要概念 1.微服务监控系统p ...
- 跟AWS学极致服务
春节期间,除了还在看技术书籍外,我一直抽空断断续续地在看<极致服务:创造不可思议的客户体验>一书.之前创业的经历,让我一直反思,除了赛道和落地之外,是否在服务质量上也有缺失. 书里从一个商 ...
- springboot项目中swagger配置
1.导入依赖 查看代码 <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId> ...
- Python内置对象(一)
Python内置对象(一) 分多次讲解 这部分相对比较简单,偶尔一些特殊的做法会强调下(前面加★) 总览 builtins = [_ for _ in dir(__builtins__) if not ...
- win10使用python自动化安装mysql8.0.11
流程概要 下载mysql-8.0.11-winx64压缩包 解压 编辑配置文件my.ini 管理员权限cmd安装(注意初始化时设置默认密码为空) pymysql连接,执行sql操作. 代码实现 依赖: ...
- Java编译异常捕捉与上报笔记
异常处理机制的作用:增强程序的健壮性 处理编译异常方式一: 在方法声明位置上使用throws关键字抛出,谁调用该方法,就交给谁处理 注意:为Exception的是需要处理的,否则编译器会报错,可以一直 ...
- P8_组件-view和scroll-view组件的基本用法
组件 小程序中组件的分类 小程序中的组件也是由宿主环境提供的,开发者可以基于组件快速搭建出漂亮的页面结构.官方把小程序的组件分为了 9 大类,分别是: 视图容器 基础内容 表单组件 导航组件 媒体组件 ...
- Mybatis的常用配置-多表关联查询
Mapper.xml常用配置 全局配置文件(数据库,事物管理,Mapper的注册.打印文件SQL.慢性加载.二级缓存) Mapper配置文件 (定义自定义接口的具体方案;SQL.数据库.数据库与POJ ...
- 搭建Git服务器教程(整理自腾讯云开发者实验室)
搭建Git服务器教程(整理自腾讯云开发者实验室) 下载安装 Git Git 是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. 此实验以 CentOS 7.2 x64 的系统 ...