返回介绍

JavaScript 示例

发布于 2019-05-26 16:28:17 字数 2246 浏览 1255 评论 0 收藏 0

使用 data 属性,将JavaScript应用于 UIkit 的组件。

你只需要在HTML元素中添加 data-uk-* 属性就能使用所有的UIKIT组件,而无需无需编写一行 JavaScript。这是在 UIkit 中使用任意组件时应当首先考虑的最佳做法。

Markup

<button data-uk-button>My Button</button>

当然你仍然可以通过使用 JQuery 的 API 来使用这些组件。

Markup

$(".button").uk("button");

AMD 支持

AMD (异步模块定义) 是一种定义 JavaScript 模块以及模块之间的依赖性的方式,因此他们可以通过异步加载的方式来使用。

用法

/* UIkit 核心的简单请求 */
require("path/to/uikit.js", function(UI){
    // UI 是UIkit的全局对象,又名 $.UIkit
});

自动加载 UIkit 及附加组件

/* 首先建立 require.js  */
requirejs.config({
    paths: {
"uikit": 'path/to/uikit.js'
    },
    config: {
"uikit": {
    "base": "path/to/uikit_dist_folder"
}
    }
});
/* 现在,你可以自动加载UIkit和附加组件了,用逗号隔开。 */
require("uikit!notify,sortable", function(UI){
    // 访问已加载的附加组件: UI.notify, UI.sortable
});

覆写默认的组件设置

调整默认的组件设置是可行的,你可以看一下下面的例子:

用法


// 覆写默认的工具提示设置
UIkit.on('beforeready.uk.dom', function(){
    $.extend(UIkit.components.tooltip.prototype.defaults, {
pos: 'top',
delay: 500,
animation: true
    });
});

监视DOM,通过诸如AJAX的方式自动初始化新添加的组件。

如果你希望通过JavaScript动态地将HTML标签注入到DOM中,只需要添加 data-uk-observe 属性到一个父元素中,就能自动地初始化UIkit的JavaScript组件。

用法


<div data-uk-observe>
    <!-- 在此注入你的动态HTML -->
</div>

通过JavaScript监视元素

UIkit.domObserve('#element', function(element) { /* 适用于元素内部的DOM改变 */ })

基于可见性变化,检测显示事件/Check Display event on visibility change.

有时,一些组件,比如 网格 或 选项卡 被隐藏在标签中。这或许是与 切换器, 模态对话框 或者 下拉菜单 组合使用是发生的。一旦它们变得可见,他们需要被重新计算修改高度或者其他外形尺寸。

为此,添加 data-uk-check-display 属性到需要重新处理的元素中。现在,它们监听由容器组件触发的 display.uk.check 事件,比如切换器。带有 data-uk-margin, data-uk-grid-margindata-uk-grid-match 属性的元素不需要添加这个属性,因为它此时是默认触发的。

Usage


<!-- 一个位于模态对话框、切换器或者下拉菜单中的元素 -->
<div data-uk-check-display>...</div>
<script>
$("#myelement").on('display.uk.check', function(){
   // 自定义的代码,用于调整显示的高度等
});
</script>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文