Javascript 当URL通过HTML更改时,带有jQuery键绑定的AngularJS指令未正确加载绑定

Javascript 当URL通过HTML更改时,带有jQuery键绑定的AngularJS指令未正确加载绑定,javascript,jquery,html,angularjs,Javascript,Jquery,Html,Angularjs,标题说明了一切。我在指令内部使用带有jQuery键绑定的AngularJS。在具有不同键盘布局的不同页面上调用新指令 出于某种原因,当我使用HTML而不是JavaScript更改URL时(即,单击vswindow.location='#/link'),我会遇到异常行为 有什么常识可以回答这个问题吗?我会发布代码,但调试的内容太多。我不使用“window.location”或“a href”来更改URL,这可能会导致您的问题。 我使用状态来更改URL 我在主模块中使用'ui.router',并将$

标题说明了一切。我在指令内部使用带有jQuery键绑定的AngularJS。在具有不同键盘布局的不同页面上调用新指令

出于某种原因,当我使用HTML而不是JavaScript更改URL时(即,单击
vs
window.location='#/link'
),我会遇到异常行为


有什么常识可以回答这个问题吗?我会发布代码,但调试的内容太多。

我不使用“window.location”或“a href”来更改URL,这可能会导致您的问题。 我使用状态来更改URL

我在主模块中使用'ui.router',并将$stateProvider、$urlRouterProvider注入配置(function()),然后在函数体上输入状态(页面的URL),并从任何位置调用它们到应用程序中

1。具有以下状态的主模块:

       angular.module('MainApp')
         .config(function ($stateProvider, $urlRouterProvider, $locationProvider) { //$stateProvider & $urlRouterProvider are from ui.router module                         
        .state('floorplan', {
            url:/floorplan/:param1/:param2/:param3',
            controller:'myCtrl1',
            templateUrl:'/assets/modules/part3/part3.html'                
            onEnter: function () {
            },
            onExit: function () {                   
            }
        })
        .state('seating', {
            url: '/seating',
            template: '<div>Seating is under construction</div>'
        })
        .state('event_details', {
            url: '/event/details',
            template: '<div>Event details is under construction</div>'
        })
        .state('reports', {
            url: '/reports',
            template: '<div>Reports is under construction</div>'
        })
        .state('part3', {
            url: '/part3/:activeEventId/:activeHallId/:activeHallVariant',
            controller: 'part3ctrl',
            templateUrl: '/assets/modules/part3/part3.html',
            onEnter: function () {

            },
            onExit: function () {
            }
        })
        .state('login', {
            url: '/login',
            controller: 'LoginCtrl',
            templateUrl: '/assets/modules/login/login.html',
            onEnter: function () {
            },
            onExit: function () {
            }
        });
    $urlRouterProvider.otherwise('floorplan'); //when no route found redirect to login
});
希望有助于好运

$state.go('floorplan', {
                 'param1': val1,
                 'param2': val2,
                 'param3': val3
        });