当前位置: 首页 > news >正文

driver.js实现页面操作指引

概述

在访问某些网站的时候,第一次进去你会发现有个操作指引,本文引用driver.js,教你在你的页面也加入这般高大上的操作指引。

实现效果

操作指引

高亮区域

实现

driver.js简介

driver.js是一个功能强大且高度可定制的基于原生JavaScript开发的新用户引导库。它没有依赖项,支持所有主要浏览器。

  • 官网地址:https://kamranahmed.info/driver.js
  • 配置项: https://driverjs.com/docs/configuration
  • API:https://driverjs.com/docs/api

安装

可通过NPM的方式引入。

npm i driver.js
// 或者
yarn add driver.js

或者CDN的方式引入

<script src="https://unpkg.com/driver.js/dist/driver.min.js"></script>
<link rel="stylesheet" href="https://unpkg.com/driver.js/dist/driver.min.css">

特性

  • **简单:**简单易用,完全没有外部依赖

  • 高度可定制:有一个强大的api,可以用于你希望突出显示任何内容

  • 高亮显示:页面功能介绍上的任意元素(字面上的任意)

  • 功能介绍:为你的web应用程序创建强大的功能介绍

  • 焦点移位器:为用户友好添加焦点移位器

  • 用户友好:通过键盘行为控制一切

  • 一致行为:所有浏览器(包括著名的IE)都可以使用

  • MIT声明:免费用于个人和商业用途。

实现

高亮

const driverObj = driver({popoverClass: "my-custom-popover-class",
});
driverObj.highlight({element: ".form-start-position",popover: {title: "起点",description: "<p>输入起点关键词,选择正确的起点</p>",},
});

操作指引

const tipsKey = `page-tips`;
if (localStorage.getItem(tipsKey)) return;
const stepsData = [{element: ".form-start-position",popover: {title: "起点",description: "<p>输入起点关键词,选择正确的起点</p>",side: "bottom",align: "center",},},{element: ".form-end-position",popover: {title: "终点",description: "<p>输入终点关键词,选择正确的终点</p>",side: "bottom",align: "center",},},{element: ".query-button",popover: {title: "查询",description: "<p>点击查询按钮,开始查询规划路径并在地图上展示</p>",side: "bottom",align: "center",},},{element: ".map-button",popover: {title: "地图",description: "<p>展示地图和路径规划</p>",side: "bottom",align: "center",},},
];
const driverObj = driver({popoverClass: "my-custom-popover-class",overlayColor: "#000000",overlayOpacity: 0.5,prevBtnText: "上一提示",nextBtnText: "下一提示",doneBtnText: "知道了",closeBtnText: "关闭",showProgress: true,progressText: "{{current}}/{{total}}",allowClose: true,stageRadius: 4,stagePadding: 10,popoverOffset: 10,onDestroyed: (ele) => {localStorage.setItem(tipsKey, "true");},steps: stepsData,
});
driverObj.drive();

自定义样式

.my-custom-popover-class {background-color: rgba(1, 122, 242, 0.8);color: #fff;.driver-popover-arrow-side-top {border-top-color: rgba(1, 122, 242, 0.8);}.driver-popover-arrow-side-bottom {border-bottom-color: rgba(1, 122, 242, 0.8);}.driver-popover-arrow-side-left {border-left-color: rgba(1, 122, 242, 0.8);}.driver-popover-arrow-side-right {border-right-color: rgba(1, 122, 242, 0.8);}.driver-popover-progress-text,.driver-popover-close-btn {color: #fff;}.driver-popover-prev-btn,.driver-popover-next-btn {border: 1px solid #fff;color: rgba(1, 122, 242, 1);}
}
http://www.lryc.cn/news/489685.html

相关文章:

  • ffmpeg区域颜色覆盖
  • 【Python TensorFlow】进阶指南(续篇三)
  • QT 实现仿制 网络调试器(未实现连接唯一性) QT5.12.3环境 C++实现
  • 【英特尔IA-32架构软件开发者开发手册第3卷:系统编程指南】2001年版翻译,2-31
  • 面试题---深入源码理解MQ长轮询优化机制
  • stable diffusion生成模型
  • 分治法的魅力:高效解决复杂问题的利器
  • Spring IOC实战指南:从零到一的构建过程
  • 3.langchain中的prompt模板 (few shot examples in chat models)
  • 量子感知机
  • VM虚拟机装MAC后无法联网,如何解决?
  • IDEA 基本设置
  • Chrome 浏览器 131 版本新特性
  • 使用php和Xunsearch提升音乐网站的歌曲搜索效果
  • 计算机毕设-基于springboot的高校网上缴费综合务系统视频的设计与实现(附源码+lw+ppt+开题报告)
  • STL关联式容器之map
  • 【HarmonyOS】鸿蒙应用唤起系统相机拍照
  • Linux系统使用valgrind分析C++程序内存资源使用情况
  • Java基础夯实——2.7 线程上下文切换
  • 死锁相关习题 10道 附详解
  • VisionPro 机器视觉案例 之 彩色保险丝个数统计
  • go-zero(七) RPC服务和ETCD
  • Jenkins + gitee 自动触发项目拉取部署(Webhook配置)
  • 043 商品详情
  • 【人工智能】Python与Scikit-learn的模型选择与调参:用GridSearchCV和RandomizedSearchCV提升模型性能
  • 深入探讨 Puppeteer 如何使用 X 和 Y 坐标实现鼠标移动
  • <OS 有关> ubuntu 24 不同版本介绍 安装 Vmware tools
  • C#调用JAVA
  • JavaEE-多线程基础知识
  • Pulid:pure and lightning id customization via contrastive alignment