[問題] 關於angular使用外部js問題

看板Ajax作者 (herbacin)時間9年前 (2016/04/21 22:13), 編輯推噓4(402)
留言6則, 3人參與, 最新討論串1/1
不好意思 ~ 以下使我的程式碼, 想請問一下 index.html <body> <div id="layout" ng-include="'demo.html'"></div> <script src="jquery.js"></script> <script src="test.js"></script> <script src="angular.js"></script> </body> ---------------------------------------------- demo.html <div id=”menu”> <div id=”subMenu”></div> </div> ----------------------------------------------- test.js (function (window, document) { var menu = document.getElementById(‘menu’); console.log(menu) }(this, this.document)); 當執行index.html的時候, console.log的結果為null, 感覺是DOM沒有載完, 抓不到, 因為我在chrome的開發者工具下console.log就可以抓到menu, 由於test.js是外部資源, 想請問, 有什麼辦法可以順利的抓到ng-include裡的DOM呢, 在不使用$scope的情況下 ~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.34.181.227 ※ 文章網址: https://www.ptt.cc/bbs/Ajax/M.1461248027.A.D07.html

04/22 00:17, , 1F
<script type="text/ng-template"> 用這把demo包起來試試
04/22 00:17, 1F

04/22 00:20, , 2F

04/22 08:16, , 3F
Angular 預設會在 DOMContentLoaded 後才開始作用,所以
04/22 08:16, 3F

04/22 08:16, , 4F
chache template 是沒用的
04/22 08:16, 4F

04/22 10:41, , 5F
你等DOMContentLoaded之後再動態載入test.js即可
04/22 10:41, 5F

04/22 10:43, , 6F
再保險一點是等menu確定render完成後再載入test.js
04/22 10:43, 6F
文章代碼(AID): #1N6E0Rq7 (Ajax)
文章代碼(AID): #1N6E0Rq7 (Ajax)