angularJS 指令封裝回到頂部示例詳解
關(guān)于angularJS如何回到頂部,還是直接code吧!
1.構(gòu)建指令,使用registerDirective構(gòu)建指令添加到內(nèi)部的hasDirectives對象內(nèi),以方便后面在全局查找指令的時候進(jìn)行匹配。
/** **回到頂部 **/ define(["app"], function (app) { app().registerDirective("backToTop", function () { return { restrict: "E", link: function (scope, element, attr) { var e = $(element); $(window).scroll(function () { //滾動時觸發(fā) if ($(document).scrollTop() > 300) //獲取滾動條到頂部的垂直高度,到相對頂部300px高度顯示 e.fadeIn(300) else e.fadeOut(200); }); /*點擊回到頂部*/ e.click(function () { $('html, body').animate({ //添加animate動畫效果 scrollTop: 0 }, 500); }); } }; }); });
注:
registerDirective 是$CompileProvider的方法,主要就是把內(nèi)建指令添加到內(nèi)部的hasDirectives對象內(nèi),以方便后面在全局查找指令的時候進(jìn)行匹配。
指令從html的角度,可以認(rèn)為指令名字是一個標(biāo)識符,可以作為元素名(E),元素屬性(A),注釋(M),類名(C)出現(xiàn)在html中;而從JavaScript的角度,則可以認(rèn)為是返回的一個規(guī)范化的有特殊意義的指令對象。
link函數(shù)創(chuàng)建可以操作dom的指令,簽名如下:
link:function(scope,element,attrs){};
scope在其內(nèi)部作用域注冊監(jiān)聽器的作用域。
element代表實例元素,指使用此指令的元素。在postLink函數(shù)中我們應(yīng)該只操作此 元素的子元素,因為子元素已經(jīng)被鏈接過了。
attrs 代表實例屬性,是一個由定義在元素上的屬性組成的標(biāo)準(zhǔn)化列表,可以在所有指 令的鏈接函數(shù)間共享。會以JavaScript對象的形式進(jìn)行傳遞。 2. 將定義的 backToTop 指令對象在頁面調(diào)用。
2.在頁面調(diào)用backToTop指令
<back-to-top class="back_top" title="返回頂部"> <i class="fa fa-angle-up"></i> </back-to-top>
注:
restrict - EACM的子集的字符串,它限制directive為指定的聲明方式。如果省略的話,directive將僅僅允許通過屬性聲明:
E - 元素名稱: <back-to-top></back-to-top>
A - 屬性名: <div back-to-top</div>
C - class名: <div class=”back-to-top”></div>
M - 注釋 : <!-- back-to-top -->
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- AngularJS自定義指令實現(xiàn)面包屑功能完整實例
- AngularJS動態(tài)菜單操作指令
- 詳解angularJs指令的3種綁定策略
- Angularjs 動態(tài)添加指令并綁定事件的方法
- Angularjs使用指令做表單校驗的方法
- Angularjs自定義指令實現(xiàn)三級聯(lián)動 選擇地理位置
- AngularJS框架的ng-app指令與自動加載實現(xiàn)方法分析
- AngularJS內(nèi)置指令
- AngularJS中的指令全面解析(必看)
- AngularJS學(xué)習(xí)筆記之基本指令(init、repeat)
- AngularJS實現(xiàn)的回到頂部指令功能實例
相關(guān)文章
Angularjs 動態(tài)改變title標(biāo)題(兼容ios)
這篇文章主要介紹了 Angularjs 動態(tài)改變title標(biāo)題(兼容ios)的相關(guān)資料,需要的朋友可以參考下2016-12-12angular.js + require.js構(gòu)建模塊化單頁面應(yīng)用的方法步驟
這篇文章主要給大家介紹了關(guān)于利用angular.js + require.js構(gòu)建模塊化單頁面應(yīng)用的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。2017-07-07AngularJs定制樣式插入到ueditor中的問題小結(jié)
這篇文章主要介紹了AngularJs定制樣式插入到ueditor中的問題小結(jié)的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-08-08Angular.JS讀取數(shù)據(jù)庫數(shù)據(jù)調(diào)用完整實例
這篇文章主要介紹了Angular.JS讀取數(shù)據(jù)庫數(shù)據(jù)調(diào)用,結(jié)合完整實例形式分析了AngularJS使用$http.get方法與后臺php交互讀取數(shù)據(jù)庫數(shù)據(jù)相關(guān)操作技巧,需要的朋友可以參考下2019-07-07angular2 ng build部署后base文件路徑問題詳細(xì)解答
本篇文章主要介紹了angular2 ng build部署后base文件路徑問題詳細(xì)解答,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07