聊一聊 intro.js

很多网站或者app, 我们第一次访问或者登陆的时候, 往往会看到好看友好的新手导航页面。如果这个功能我们自己来做, 首先, 首先, 需要有一个弹框, 其次, 获取DOM的位置来确定弹框的显示顺序, 然后要知道新手导航有几步,等等, 想做完美, 不是一件容易的事情。 然而, 我们可以站在居然的肩膀上, 这个巨人就是intro.js

废话不多说了, 进入正题吧!

在三大框架中, 我们选择angular2+ (intro.js有angular(1.x版本))

首先, 需要安装intro.js

npm install --save intro.js @types/intro.js

安装完成后, 需要引入angular

// 在angular-cli.json文件中加入
···
styles:[
    "../node_modules/intro.js/minified/introjs.min.css".
    //还可以引入主题的css样式
]
···

 scripts:[
     "/node_modules/intro.js/minified/intro.min.js".
 ]
···

最后, 把intro.js导入文件中,

// intro.component.ts 
import * as intro from intro.js 

···
{
    const intro = intro.introJs()  
    // const intro = intro.introJs('#container')   加参数会在参数的DOM上显示新手导航
    intro.setOptions({
    skipLabel:'跳过',
    doneLabel:'完成',
    prevLabel:'上一步',
    nextLabel:'下一步',
    steps:  [{
                 element: '#step1',  // 在对应的元素上加上 id="#step1"
                  intro: 'Step one description', // 导航显示的内容, 可以加图片
                  position: 'bottom'  // 导航现实的位置
                },
                {
                   element: '#step2',
                   intro: 'Step <i>two</i> description',
                  position: 'bottom'
                },
                {
                  element: '#step3',
                  intro: 'Step <span style="color: green;">three</span> description',
                  position: 'bottom'
                }]
});
    
    intro.onbeforechange(()=>{
        // 点击下一步导航前的回调
    })
    .onchange(()=>{
       // 点击下一步导航的回调
        
    }).onafterchange(()=>{
        // 点击下一步导航后的回调
        
    })
    intro.start()

}
···
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 12,975评论 2 59
  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AGI阅读 16,019评论 3 119
  • 人的一生是短暂的,有的事情经历过记忆深刻,让人留恋;有的人相处过刻骨铭心,让人珍惜。如果有来生,我还愿意与我的妻子...
    戚润憨阅读 780评论 41 50
  • 20171109:女儿班主任在班级群里发义工联盟组织去常州图书馆志愿活动,需要10个志愿者,让大家自愿报名。我马上...
    夏莲沐阅读 413评论 3 3