AngularJS 插件 ngOnboarding 使用笔记
2015-12-08 00:00
871 查看
背景
最近由于项目需要,需要有一个用户引导的功能在用户第一次登陆的时候,最初的考虑是使用Intro.JS(http://usablica.github.io/intro.js/)。实现的项目如上图。东西很好但是这个控件是基于JQuery的控件。我们的项目是基于AngularJS框架的,就得使用IntroJS的AngularJS版本(),这样一来为了实现这个功能,添加了太多的依赖,我只想说,不值得。
然后就是本文的主题了,有一款基于AngularJS框架的用户引导控件ngOnboarding,小巧实用,首先提供官方的Github link: https://github.com/adamalbrecht/ngOnboarding. 然后和大家分享一下使用中的技巧。
Demo
作者提供了一个简单直观的Demo :http://adamalbrecht.github.io/ngOnboarding/大家需不需要这个,点开开一眼就好了。===
基本实用
由于这个插件很小巧很轻量,所以使用也很简单了。首先在html或者在router中引入需要的依赖文件,只有两个,HTML的引入代码如下
<link href="******/ngOnboarding-master/dist/ng-onboarding.css" rel="stylesheet" type="text/css"/> <script src="******/ngOnboarding-master/dist/ng-onboarding.js" type="text/javascript"></script>
接着就是大家熟知的往Angular APP中添加相关的模块
app = angular.module("myApp", ["ngOnboarding"]);
最后最简单的使用配置就是直接定义好所需要显示的引导步骤
$scope.onboardingSteps = [ { title: "Welcome!", position: "centered", description: "Welcome to my app!", width: 300 }, { title: "Account Setup", position: "right", description: "This is the form for configuring your account.", attachTo: "#account_form", position: "bottom" } ];
定义好这些,是时候在html中加入相关的标签了,在这我们只用最简单的配置
<onboarding-popover enabled="onboardingEnabled" steps="onboardingSteps" on-finish-callback='myCallbackFunction' step-index='onboardingIndex'></onboarding-popover>
配置选项
Title: 弹出提示3ff0
框的标题内容
description: 弹出提示框的显示内容(可以包括HTML代码)
attachTo: 用于定位指定页面元素的CSS选择器
position: 弹出提示框相对于指定元素的位置,可以设置为"left","right","top","bottom","centered",除了"centered",其余参数都需要配置attachTo属性
width: 弹出框的宽度,默认宽度为内容的大小
height: 弹出框的高度,默认高度为内容的大小
top, right, bottom, left: 设置弹出框的具体坐标
xOffset: 弹出框相对于选定元素的x轴偏移量
yOffset: 弹出框相对于选定元素的y轴偏移量
全局配置
我们可以通过config的方式在AngularJS APP启动时对Onboarding做一些全局的配置app.config(function(ngOnboardingDefaultsProvider) { ngOnboardingDefaultsProvider.set('option', 'value'); // Or with a hash ngOnboardingDefaultsProvider.set({option: 'value', option2: 'value2'}); })
(未完待续)
最后要说的话
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- Android学习笔记(二九):嵌入浏览器
- Android java 与 javascript互访(相互调用)的方法例子
- JavaScript演示排序算法
- javascript实现10进制转为N进制数
- 2019年开发人员应该学习的8个JavaScript框架
- HTML中的script标签研究
- 对一个分号引发的错误研究
- 异步流程控制:7 行代码学会 co 模块
- ES6 走马观花(ECMAScript2015 新特性)
- JavaScript拆分字符串时产生空字符的原因
- Canvas 在高清屏下绘制图片变模糊的解决方法
- JavaScript 各种遍历方式详解
- call/apply/bind 的理解与实例分享
- 如何创建对象以及jQuery中创建对象的方式
- IE8开发人员工具教程(二)
- 在flex中执行一个javascript方法的简单方式