在使用ng-show更改$ scope變量後,我必須在元素上綁定js事件。
當我改變範圍後,我運行JS腳本,但Js比角速度快,他錯過了發現一些尚未通過ng-show顯示的div。
這是一個針對這個問題的一些代碼示例的蹲點。我發現這種問題的辦法是做JS代碼在setTimeout的,但我需要一個乾淨的解決方案:https://plnkr.co/edit/iYDs552yCyd3R7ivgD84?p=preview
$scope.start = function(){
$scope.showMap=true;
setTimeout(function(){
jsFunc();
},1000);
}
您需要在範圍變量上添加一個手錶:https://www.sitepoint.com/mastering-watch-angularjs/ –
正如您在plunker中可以看到的那樣,我只是按照您所說的編輯它,但並未解決問題,watch函數被調用的時間稍早於angularjs所做的dom更改 – SWahi