npm 包 ember-tether 使用教程

前端框架 Ember.js 具备强大的模板与组件化开发能力,同时还内嵌了许多功能强大的插件和扩展。其中,ember-tether 就是一款优秀的插件,可以让开发者在应用中方便地实现基于 Tether.js 的 tooltips 与 popover 等交互效果。本文将详细介绍如何使用 ember-tether 套件,以及解析其中的技术原理。

简介与安装

ember-tether 套件的原理是基于 Tether.js 实现的。Tether.js 是一个简单的定位引擎,可用于创建出具有吸附性质的 DOM 元素。如其名称之意,它的定位逻辑是通过“连接线(tether)”的方式,通过两个点的定位来决定内容元素的位置。ember-tether 套件通过对 Tether.js 进行封装,为 Ember.js 应用开发者提供了一组现成的组件,以实现 tooltip 与 popover 的效果。

要在你的项目中使用 ember-tether 套件,首先需要在命令行中执行以下 npm 安装命令:

--- ------- ------------

组件使用

在安装完成后,即可在 Ember.js 应用的组件中调用 ember-tether 的各项函数。下面将分别介绍 tooltip 和 popover 的使用方法。

Tooltip

在模板文件中,需要使用 {{ember-tether-popover}} 标签来包裹内容元素,在其中通过 text="" 这个属性来定义 tooltip 的文本内容。

-----------------------
    -----------------------
    -------------
--
    ------- ----------------
        ----
    ---------
-------------------------

在 JS 文件中,需要定义组件函数,调用 tetherOptions 函数定义定位参数。这里可以通过 attachment 以及targetAttachment 属性来设置定位方式(相对于目标元素的对齐方式)。完整的 JS 代码如下所示:

------ --------- ---- -------------------
------ - ------ - ---- ----------------

------ - ------------------- - ---- ---------------

------ ------- ----- ------- ------------------------------------- -
  -------
  ------------ -
    --- ------------- - -
      ------- --------------------------
      ----------- ---- --------
      ----------------- ------- -------
    --

    --------------------------------
  -

  -------
  -------------- -
    ---------------------
  -
-

Popover

Popover 组件与 Javascript 的事件绑定有着密不可分的关系。在模板中,需要使用 {{action}} 标签定义事件触发的函数名,并使用 {{ember-tether-popover}} 标签包裹元素,在其中通过 class="hide" 将内容元素隐藏(这里假设我们的 popover 元素具有 .box 类名)。

------- --------------- -------- --------------
    ------ -------
---------

-----------------------
    -----------------
    -----------------------
    ---------------
--
    ---- ---------- ------
        --------
    ------
-------------------------

在定义事件触发函数时,需要使用 toggleBox 这个函数名,并在函数中调用 hidePopover 以及 showPopover 函数,控制 Popover 是否显示。

------ --------- ---- -------------------
------ - ------ - ---- ----------------
------ - ---- - ---- -----------------

------ - ------------------- - ---- ---------------

------ ------- ----- ------- ------------------------------------- -
  -------
  ------------ -
    --- ------------- - -
      ------- --------------------------
      ----------- ---- --------
      ----------------- ------- -------
    --

    --------------------------------
  -

  -------
  -------------- -
    ---------------------
  -

  -------
  ----------- -
    --- --- - -----------------------------------

    -- -------------------------------- -
      -------------------
      -----------------------------
    - ---- -
      -------------------
      --------------------------
    -

    ---------- ----------------------
  -
-

总结

本文中,我们详细介绍了如何使用 ember-tether 套件实现 tooltip 与 popover 的效果,以及相应的技术原理。在使用 ember-tether 套件时,需要将组件函数与模板文件中的调用方法结合使用。除了 tooltip 与 popover 外,ember-tether 套件还可用于定义其他效果,如 pop-up 连接框等。通过本文的学习,相信大家已经对 ember-tether 的使用方法有了更加深入的了解。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60087


猜你喜欢

  • npm 包 react-docgen-annotation-resolver 使用教程

    在 React 开发中,有时候我们需要自动生成组件文档,以便其他开发者更好的理解和调用组件。react-docgen-annotation-resolver 就是一款可以帮助我们自动生成组件文档的 n...

    6 年前
  • npm 包 Rewrite-Imports 使用教程

    在前端开发中,我们常常使用外部库、框架和模块来帮助我们提高开发效率和代码质量。但是随着项目不断的迭代,可能会出现一些旧的库、框架和模块需要被替换或者升级,这时候我们需要手动修改代码中的 import ...

    6 年前
  • npm 包 eslint-config-satya164 使用教程

    前言 在前端开发中,常常会有代码质量不高的问题,如出现不符合规范的变量命名、代码风格不一致等问题,这些问题大多都可以通过 ESLint 来发现并解决。而 eslint-config-satya164 ...

    6 年前
  • npm 包 react-simple-code-editor 使用教程

    在前端开发中,编写优雅的代码是非常重要的。为了提高代码可读性、可维护性和易扩展性,我们需要使用一些工具来辅助我们进行代码编写。其中,使用代码编辑器是非常重要的一步。

    6 年前
  • npm 包 walkes 使用教程

    在前端开发中,我们经常需要遍历JavaScript对象或AST等。其中,AST是指抽象语法树,它是用于表示编程语言代码结构的一种树形结构。为了便于管理和操作AST,我们通常使用npm包walkes。

    6 年前
  • 使用 npm 包 dog-names

    在前端开发中,多次遇到需要使用随机狗名字的情况。这时,我们可以选择使用 npm 包 "dog-names"。本文将会对该包进行详细介绍,并提供使用教程。 什么是 dog-names "dog-name...

    6 年前
  • npm 包 deepfreeze 使用教程

    在前端开发中,我们经常会使用对象来存储和处理数据。为了保证数据的不可变性,我们可以使用 deepfreeze 这个 npm 包来将数据结构冻结,以确保它们不能被修改。

    6 年前
  • npm 包 deabsdeep 使用教程

    在前端开发中,经常会遇到需要处理嵌套对象并删除其中的空值的情况。此时,可以使用 npm 包 deabsdeep 来简化操作。 deabsdeep 简介 deabsdeep 是一款 Node.js 模块...

    6 年前
  • npm 包 strip-shebang 使用教程

    在前端开发中,我们经常需要使用npm包来加快开发效率。strip-shebang是一个非常实用的npm包,它能够去除文件开头的shebang(#!)注释。在本文中,我们将介绍如何使用strip-she...

    6 年前
  • npm 包 keymirror 使用教程

    在前端开发中,我们经常需要处理大量的常量。但是,手写常量容易出现错误,而且随着代码量增加,维护也变得很困难。keymirror 是一个可以帮助我们生成常量对象的 npm 包。

    6 年前
  • npm 包 react-styleguidist 使用教程

    React Styleguidist 是一个基于 React 的 UI 组件库开发工具,可以像使用类似 Storybook 等工具一样实时预览 UI 组件的文档和演示,生成文档并统一管理,让 UI 组...

    6 年前
  • npm 包 loglevel-mixin 使用教程

    在前端开发中,我们时常需要记录日志,以便调试和排查问题。而前端的日志记录方式大多依赖于 console 对象,如 console.log、console.debug 等方法。

    6 年前
  • npm 包 repository-provider 使用教程

    在现代的前端开发中,npm 已成为了必不可少的工具之一,而 repository-provider 是一款 npm 包,它可以帮助我们更好地处理我们的 npm 包的发布与管理。

    6 年前
  • npm 包 markdown-doctest 使用教程

    在前端开发中,我们经常需要使用 Markdown 格式来记录文档、写博客等。但有时我们需要在 Markdown 中嵌入代码,并针对这些代码进行测试和验证。这时我们可以使用 npm 包 markdown...

    6 年前
  • npm包svn-repository-provider使用教程

    在进行团队协作开发的过程中,代码版本管理是至关重要的。而Subversion(简称SVN)是一种非常流行的版本控制系统。它可以对代码进行管理和协作开发,但SVN的安装、运行和操作都非常繁琐。

    6 年前
  • npm 包 stdio 使用教程

    stdio 是一个 npm 包,它可以帮助你更加方便地控制标准输入和输出流。它的使用方法简单明了,本文将向您介绍如何使用 stdio 包来进行流的操作。 安装 首先,您需要在本地安装 stdio 包。

    6 年前
  • npm 包 winser 使用教程

    简介 在 Windows 系统中运行作为系统服务的 Node.js 应用程序时,需要使用一些特殊的工具和技术。winser 就是一款为 Node.js 应用程序提供 Windows Service 功...

    6 年前
  • npm 包 statsd 使用教程

    简介 npm包 statsd 是一款 JavaScript 库,用于将应用程序的性能度量数据发送到 StatsD 或统计分析服务。 在开发中,我们需要了解应用程序的性能表现,以改进性能、保持应用程序的...

    6 年前
  • npm 包 serialport 使用教程

    Serialport 是一个 Node.js 应用程序,它允许您通过串行端口与计算机进行通信。它提供了一种方便的方式来连接各种串行设备,例如 Arduino、传感器和其他嵌入式硬件。

    6 年前
  • npm 包 tsdoc 使用教程

    在前端开发中,我们经常会用到各种各样的 npm 包来完成我们的工作。而 tsdoc 是一种专门为 TypeScript 开发者设计的文档生成工具,可以帮助我们方便地为我们的 TypeScript 代码...

    6 年前

相关推荐

    暂无文章