vue使用driver.js引导并自定义样式和按钮

参考网址https://driverjs.com/docs/installation 

安装

npm install driver.js

以下是1.3.1版本的基本使用方法

import { driver } from 'driver.js'
import 'driver.js/dist/driver.css'
mounted() {// 实例化driver对象const driverObj = driver({showProgress: true,steps: [{ element: '.title', popover: { title: 'Title', description: 'Description' } },{ element: '.desc', popover: { title: 'Title', description: 'Description' } }]})driverObj.drive()
}

展示效果

常用属性及方法:

overlayColor: 'red', //遮罩颜色

 显示哪个按钮,不要哪个就去掉,全不显示赋值为['']

showButtons: ['next','previous','close'],

改变按钮文字

nextBtnText: '下一步',
prevBtnText: '上一步',
doneBtnText: '完成',

 改变样式

//js部分
popoverClass: 'customer-popover',//css部分
.customer-popover {.driver-popover-next-btn {color: #1583f8;}
}

onNextClick (点击下一步按钮触发)

注意:调用此方法,点击下一步按钮不会自动执行,需要手动调用driverObj.moveNext();

onNextClick: () => {console.log('Next Button Clicked')// Implement your own functionality heredriverObj.moveNext()
},

onPrevClick(点击上一步按钮触发)

注意:调用此方法,点击上一步按钮不会自动执行,需要手动调用driverObj.movePrevious();

onPrevClick: () => {console.log('Previous Button Clicked')// Implement your own functionality heredriverObj.movePrevious()
},

onCloseClick(点击关闭按钮触发)

注意:调用此方法,点击关闭按钮不会自动关闭,需要手动调用driverObj.destroy();

onCloseClick: () => {console.log('Close Button Clicked')// Implement your own functionality heredriverObj.destroy()
},

onDestroyStarted(退出引导时触发)

注意:调用此方法,点击其他区域不会自动关闭,需要手动调用driverObj.destroy();

 onDestroyStarted: () => {if (!driverObj.hasNextStep() || confirm("Are you sure?")) {driverObj.destroy();}},

自定义按钮

onPopoverRender: (popover, { config, state }) => {const firstButton = document.createElement('button')firstButton.innerText = 'Go to First'popover.footerButtons.appendChild(firstButton)firstButton.addEventListener('click', () => {driverObj.drive(0)})
},

完整配置

const driverObj = driver({showProgress: true,overlayColor: 'red', //遮罩颜色steps: [{element: '.title',popover: {title: '星标',description: '点击 Star 按钮可以星标这个作品,在我的主页可以查看我星标过的作品'}},{element: '.desc',popover: { title: '运行', description: '点击 Run 按钮可以运行这个作品' }}],showButtons: ['next', 'previous'],nextBtnText: '下一步',prevBtnText: '上一步',doneBtnText: '完成',popoverClass: 'customer-popover',onPopoverRender: (popover, { config, state }) => {const firstButton = document.createElement('button')firstButton.classList.add('pass-btn')firstButton.innerText = '跳过'popover.footerButtons.appendChild(firstButton)firstButton.addEventListener('click', () => {console.log(666)driverObj.destroy()})},onNextClick: () => {console.log('Next Button Clicked')// Implement your own functionality heredriverObj.moveNext()},onPrevClick: () => {console.log('Previous Button Clicked')// Implement your own functionality heredriverObj.movePrevious()},onCloseClick: () => {console.log('Close Button Clicked')// Implement your own functionality heredriverObj.destroy()},onDestroyStarted: () => {console.log('onDestroyStarted is called when the user tries to exit the tour')driverObj.destroy()}
})
driverObj.drive()<style>
.customer-popover {min-width: 360px;max-width: 500px;padding: 22px;.driver-popover-next-btn,.driver-popover-prev-btn,.pass-btn {color: #fff;background-color: #2774e9;border-color: #2774e9;height: 32px;padding: 0 15px;font-size: 16px;border-radius: 6px;text-shadow: inherit;&:hover,&:focus {background-color: #2774e9;}}.driver-popover-description {margin-bottom: 20px;margin-top: 20px !important;}
}
</style>

修改样式后展示效果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/839705.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode674:最长连续递增序列

题目描述 给定一个未经排序的整数数组&#xff0c;找到最长且 连续递增的子序列&#xff0c;并返回该序列的长度。 连续递增的子序列 可以由两个下标 l 和 r&#xff08;l < r&#xff09;确定&#xff0c;如果对于每个 l < i < r&#xff0c;都有 nums[i] < nums…

uniapp微信小程序在ios端返回不显示弹窗的bug解决

这个问题其实是因为返回页面的时候弹的太快了导致的解决办法&#xff1a; 其实就是返回页面的弹窗加个延迟就好啦

iOS单元测试覆盖率报告导出功能实现

一、插件安装 在Mac电脑上&#xff0c;安装slather插件。插件地址&#xff1a;https://github.com/SlatherOrg/slather 安装命令&#xff1a; gem install slather二、在Xcode上设置Code Coverage&#xff0c;Targets指定XXX 三、在终端切换到项目根目录下&#xff0c;执行单…

在Windows上创建RAM Disk

在Windows 10上创建一个与Linux中的tmpfs相似的内存文件系统&#xff08;一个文件系统&#xff0c;它使用主内存作为存储&#xff09;通常不是操作系统直接提供的功能。不过&#xff0c;有一些方法可以实现类似的效果。 使用软件创建RAM Disk 有一些第三方软件可以帮助在Wind…

牛马真的沉默了,入职第一天就干活

入职第一天就干活的&#xff0c;就问还有谁&#xff0c;搬来一台N手电脑&#xff0c;第一分钟开机&#xff0c;第二分钟派活&#xff0c;第三分钟干活&#xff0c;巴适。。。。。。 打开代码发现问题不断 读取配置文件居然读取两个配置文件&#xff0c;一个读一点&#xff0c;…

Java时间工具类(Date和LocalDateTime)

Date package com.qiangesoft.utils.date;import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date;/*** 日期工具类** author lq* date 2024-05-23*/ public class DateUtil {public static final String[] C…

HiWoo Box边缘计算网关

​在数字化浪潮汹涌的今天&#xff0c;边缘计算网关成为了连接物理世界与数字世界的桥梁&#xff0c;其重要性日益凸显。HiWoo Box&#xff0c;作为一款功能强大的边缘计算网关&#xff0c;不仅具备了传统网关的基本功能&#xff0c;更在数据采集、处理、传输等方面展现出了卓越…

automa:循环元素的一个示例,取TME结合插件实现自动下载音乐。

因为tme没提供批量下载音乐的功能。我找到了一个插件可以下载。但需要点击播放时&#xff0c;才能感 知。 我原来用python写了一个&#xff0c;能实现&#xff0c;这想把他移植到automa上&#xff0c;同时想使用循环元素的方法&#xff0c;避免不必要的时间浪费。 开始。首先…

2024年商业管理与文化传播国际学术会议(ICBMCC 2024)

2024年商业管理与文化传播国际学术会议&#xff08;ICBMCC 2024) 2024 International Conference on Business Management and Cultural Communication 一、【会议简介】 2024年商业管理与文化传播国际学术会议&#xff08;ICBMCC 2024&#xff09;是一次汇集全球商业管理领域…

Vaex :突破pandas,快速分析100G大数据量

pandas处理大数据的限制 现在的数据科学比赛提供的数据量越来越大&#xff0c;动不动几十个G&#xff0c;甚至上百G&#xff0c;这就要考验机器性能和数据处理能力。 Python中的pandas是大家常用的数据处理工具&#xff0c;能应付较大数据集&#xff08;千万行级别&#xff09…

HarmonyOS之ArkUI布局设计常见细节

这里写目录标题 1. Button设置带有渐变色的背景图片无效1.1 问题分析1.2 成功案例 2. 路由跳转失败2.1 问题分析 1. Button设置带有渐变色的背景图片无效 1.1 问题分析 说明&#xff1a;设置颜色渐变需先设置backgroundColor为透明色。 Button($r(app.string.login), { type…

Logrus IT的专家们已将游戏《菇勇者传说》翻译成俄语

《菇勇者传说》是一款引人入胜的放置类RPG游戏&#xff0c;邪恶的龙将所有人变成了蘑菇。为了恢复人类形态&#xff0c;玩家的角色需要从小蘑菇成长为强大的勇士。 游戏中有多个蘑菇职业&#xff0c;每个职业都有独特的技能。玩家可以根据自己的喜好提升角色的属性和改变外观&…

0基础从前端到Web3 —— Mine Clearance Frontend(一)

初始化项目以及通过dapp-kit连接钱包的部分就不再赘述&#xff0c;具体可以点击查看&#xff0c;如果篇幅当中遇到了一些未添加的依赖项&#xff0c;直接通过pnpm add -D <name>一般都可以解决。 一&#xff1a;链上网络切换 这里提供一个最简单的切换方式&#xff0c;…

Obsidian Git 多端同步

2023年6月&#xff0c;某云笔记限制了免费用户最多同时登录 2 台设备&#xff0c;想要增加设备数量需要付费开通会员。之后我一直想找一款合适的笔记本软件&#xff0c;年底尝试了Obsidian&#xff0c;断断续续摸索了好几天终于成功了。将那时的笔记拿来分享一下。 相关地址&am…

FPGA搭积木之按键消抖(改进版)

目录 1.前言 2.回顾之前的设计 3.基于读者思路的设计 4.ModelSim仿真 1.前言 昨天分享的关于FPGA对机械按键消抖的设计&#xff0c;有读者指出了其中的不足&#xff0c;并给出了他的思路。今天就读者的设计思路&#xff0c;来再做一个按键消抖模块。这个程序大概是大学的时…

亚马逊、eBay、沃尔玛、OZON、速卖通等平台自养号攻略,助力测评补单

当前&#xff0c;跨境电商面临着巨大的挑战&#xff0c;其运营环境日益变得错综复杂。然而&#xff0c;这种复杂性可以归结为两个核心元素&#xff1a;买与刷。商家们通过进行买卖交易或补单操作&#xff0c;旨在增加销售、提升产品排名&#xff0c;并进而增强产品的权重。 销…

docker-如何将容器外的脚本放入容器内,将容器内的脚本放入容器外

文章目录 前言docker-如何将容器外的脚本放入容器内&#xff0c;将容器内的脚本放入容器外、1. docker 如何将容器外的脚本放入容器内1.1. 验证 2. 将容器内的脚本放入容器外 前言 如果您觉得有用的话&#xff0c;记得给博主点个赞&#xff0c;评论&#xff0c;收藏一键三连啊&…

VMware Workstation 虚拟机安装 ubuntu 24.04 server 详细教程 服务器安装图形化界面

1 阿里云下载 ubuntu-releases安装包下载_开源镜像站-阿里云 2 打开vmware,新建虚拟机 3 选择下载的镜像,开始安装 3 光驱这里修改下 4 重新启动&#xff0c;安装图形化界面 #更新软件包列表 sudo apt-get update #安装Ubuntu图形桌面 sudo apt install ubuntu-desktop 5 安…

【调试笔记-20240524-Linux-扩展 OpenWrt-23.05 发行版 EXT4 镜像文件大小】

调试笔记-系列文章目录 调试笔记-20240524-Linux-扩展 OpenWrt-23.05 发行版 EXT4 镜像文件大小 文章目录 调试笔记-系列文章目录调试笔记-20240524-Linux-扩展 OpenWrt-23.05 发行版 EXT4 镜像文件大小 前言一、调试环境操作系统&#xff1a;Ubuntu 22.04.4 LTS工作环境调试目…

【SD-WAN】香港企业进入粤港澳大湾区所面临的机遇和挑战

粤港澳大湾区发展及规划是中国其中一个主点发展战略&#xff0c;具备完整的多元化产业结构&#xff0c;城市之间建立强大的经济互补性&#xff0c;是国际性湾区和世界级城市群。因此&#xff0c;大湾区近年吸引了不少香港的创新及科技企业前往发展投资及设立据点扩展业务。本文…