簡體   English   中英

angularjs路由,javascript在注入的視圖上不起作用

[英]angularjs routing, javascript does not work on injected views

我只是按照以下鏈接上的教程進行操作:https://scotch.io/tutorials/single-page-apps-with-angularjs-routing-and-templating

我完全按照頁面上的描述進行操作,但是將其逐步發展為一個真正的項目,我不得不在內部頁面(例如pages / about.html)中放置一些javascript代碼。 由於某種原因,它沒有執行。 即使你放一個

<script>
    alert('foo');
</script>

它不被解釋為javascript代碼。 並且未顯示警報

頁面是使用ng-view注入的

<div id="main">

    <div ng-view></div>

</div>

整個代碼可以在https://scotch.io/tutorials/single-page-apps-with-angularjs-routing-and-templating中查看

謝謝

我一直在模板中使用腳本(用於延遲加載)一段時間,卻不知道AngularJS並沒有完成全部工作。 但是,如果將AngularJSJQuery結合使用,則可以完成任務。

檢查以下代碼段以獲取解決方案:

index.html

<!DOCTYPE html>
<html ng-app="app">

<head>

  <meta charset="utf-8">

  <script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.2/angular.min.js"></script>
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.2/angular-route.js"></script>

</head>

<body>

  <h1>angular app</h1>

  <div ng-view></div>

  <script type="text/javascript">
    var app = angular.module('app', ['ngRoute']);

    app.config(function($routeProvider) {

      $routeProvider

        .when('/', {
        template: '<a href="#script">i´m feeling lucky!</a>'
      })

      .when('/script', {
        templateUrl: 'script.html'
      });

    });
  </script>

</body>

</html>

script.html

script successfully loaded!
<script>alert('ok');</script>

在這種情況下,導入順序很重要。 如果將JQueryAngularJS交換,該解決方案將無法正常工作。

希望能幫助到你!

暫無
暫無

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

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