簡體   English   中英

element.ready vs angular.element($ document).ready

[英]element.ready vs angular.element($document).ready

我正在制定一個指令,但我不想使用$document$window ,只能使用element本身。

在我之前:

angular.element($document).ready(function() {...});

並且正在工作,就在幾分鍾前我改變了,並把:

element.ready(function() {...});

它也在工作。

所以,當我說element.ready(function() {...})時,我告訴Angular在元素<my-directive></my-directive>准備就緒時運行該函數? 或者我在做什么?

我問這個是因為我想知道,為什么它仍在工作,如果我做element.ready而不是。

你也不需要。

不需要ready ,因為必須存在元素才能觸發鏈接功能。 此外,沒有元素級別就緒事件...它僅用於文檔級別以考慮存在的整個頁面。 當angular正在編譯指令時,那個階段已經過去了。

您可以在指令的link函數中直接對element進行任何操作或事件綁定

在angularjs中, angular.element是一個jqLit​​e對象

而angular指令中的元素是一個jqLit​​e對象,你不需要再次使用angular.element進行換angular.element

例如,在此代碼中,所有元素都是相同的

var element1 = angular.element( document.getElementById('test') ); // a jqLite object

var element2 = angular.element( element1 ); // same jqLite object

var element3 = angular.element( element2 ); // same jqLite object

順便說一下,你不需要准備好因為指令鏈接在元素就緒時調用

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM