# 附著/Sticky
讓頁面元素保持在視口頂部,比如跟隨滾動的導航欄。
## 用法
創建一個能在頁面滾動時能保持在視口頂部的頁面元素,添加 `data-uk-sticky` 屬性到該元素即可。注意 使用此組件需要額外添加 `sticky.css` 文件,在`css/components`文件夾中。此組件需要額外添加 `sticky.js` 文件,在`js/components`文件夾中。
### Example

### Markup
```
<div data-uk-sticky>...</div>
```
* * *
## 賦予偏移量
還可以定位元素處于視口邊緣下的位置。比如,添加 `data-uk-sticky="{top:100}"` 屬性創建100px的margin。
### Example

### Markup
```
<div data-uk-sticky="{top:100}">...</div>
```
* * *
## 添加延遲
為元素添加延遲,這樣使它能在頁面滾動特定距離后才變成粘連狀態,你需要添加一個負偏移值到data屬性,比如 `data-uk-sticky="{top:-200}"`。還可以添加[動畫](animation.html)讓元素可以平滑地再次出現。
### Example

### Markup
```
<div data-uk-sticky="{top:-200, animation: 'uk-animation-slide-top'}">...</div>
```
* * *
## 響應式行為
還可以通過在data屬性中添加斷點選項,來實現在不同設備上禁用粘連行為,比如 `data-uk-sticky="{media: 640}"` 。另外,還可以使用媒體查詢來控制。
### Markup
```
<!-- This is basically a shortcode to define a min-width -->
<div data-uk-sticky="{media: 640}">...</div>
<!-- This is a media string using the min-width and orientation properties -->
<div data-uk-sticky="{media: '(min-width: 640px) and (orientation: landscape)'}>...</div>
```
* * *
## 附著的邊界
可以通過設置 boundary 參數定義元素附著行為的邊界,使其只在該范圍內跟隨滾動。
### Example

### Markup
```
<!-- Bind sticky to its parent element -->
<div data-uk-sticky="{boundary: true}">...</div>
<!-- Bind sticky to any element -->
<div data-uk-sticky="{boundary: '#my-id'}">...</div>
```
* * *
## JavaScript 選項
| 選項 | 可用值 | 默認值 | 描述 |
| --- | --- | --- | --- |
| `top` | integer | 0 | 觸發附著行為的頂部偏移量 |
| `animation` | string | '' | UIkit 的動畫 class |
| `clsinit` | string | uk-sticky-init | 元素首次附著時進行初始化的class |
| `clsactive` | string | uk-active | 元素附著時添加的 class |
| `clsinactive` | string | '' | 元素未附著時添加的 class |
| `getWidthFrom` | string | '' | 粘連模式下獲取寬度的CSS選擇器。默認情況下它從已創建的外層元素獲取寬度值。 |
| `media` | integer / string | false | 激活狀態所需的整型寬度條件,或CSS媒體查詢 |
| `target` | boolean | false | 確保粘連元素不會在DOM就緒后通過位置散列(location hash)越過目標元素。 |
| `showup` | boolean | false | 是否僅在滾動時顯示附著的元素 |
| `boundary` | mixed | false | 設置為 `true` 將粘連綁定到父元素或使用CSS選擇器將粘連綁定到特定元素。 |
### 手動初始化元素
```
var sticky = UIkit.sticky(element, { /* options */ });
```
### 事件
| 名稱 | 參數 | 描述 |
| --- | --- | --- |
| `active.uk.sticky` | event | 獲得附著效果 |
| `inactive.uk.sticky` | event | 脫離附著狀態 |
- UIkit 中文文檔
- 開始使用
- 初學者
- 開始使用
- 如何自定義
- 布局示例
- 開發者
- 項目結構
- Less & Sass 文件
- 創建主題
- 創建樣式
- Customizer.json
- JavaScript
- 自定義前綴
- 核心組件
- 默認
- 基礎
- 打印
- 布局類組件
- 網格
- 面板/Panel
- 塊/Block
- 文章
- 評論/Comment
- 效果/Utility
- Flex 布局
- 覆蓋/Cover
- 導航類組件
- 導航菜單
- 導航欄
- 二級導航
- 面包屑/Breadcrumb
- 分頁
- 選項卡
- 縮略圖導航/Thumbnav
- 頁面元素
- 列表
- 描述列表
- 表格
- 表單
- 常用組件
- 按鈕
- 圖標
- 關閉/Close
- 徽章/Badge
- 提示框
- 縮略圖/Thumbnail
- 遮罩/Overlay
- 文本
- 列
- 動畫
- 對比度/Contrast
- JAVASCRIPT組件
- 下拉菜單
- 模態對話框
- 抽屜/Off-canvas
- 切換器/Switcher
- 撥動/toggle
- 滾動監聽/Scrollspy
- 平滑滾動
- 附加組件
- 布局類組件
- 動態網格
- 視差網格
- 導航類組件
- 圓點導航
- 滑動導航/Slidenav
- 動態分頁
- 常用組件
- 高級表單
- 文件表單/Form file
- 密碼表單
- 選擇表單
- 占位符
- 進度條/Progress
- JAVASCRIPT組件
- 燈箱/Lightbox
- 自動完成/Autocomplete
- 日期選擇器/Datepicker
- HTML 編輯器
- 滾動條/Slider
- 滑塊集/Slideset
- 幻燈片/Slideshow
- 視差/Parallax
- 手風琴/Accordion
- 通知/Notify
- 搜索/Search
- 可嵌套/Nestable
- 可排序/Sortable
- 附著/Sticky
- 時間選擇器
- 工具提示/Tooltip
- 上傳