2014-04-14 17 views
0

我正在尋找在我的應用程序中使用angularjs。我已經能夠編寫一些控制器,並從前端使用它們。我現在想要做的是重構一些現有的.JS文件,我們jQuery。例如:用Angular重寫jQuery文件

原始message.js文件

define([ 'jquery' ], function($) { 
'use strict'; 

return function(router) { 
    router('*', function(ctx, next) { 
     if (typeof console !== 'undefined'); 

      $('.message').on('click', function() { 

       $(".message").show();    

      });  

     next(); 
    }); 
}; 
}); 

嘗試新message.js文件

define([ 'angular' ], function($) { 
'use strict'; 

return function(router) { 
    router('testpage.html', function(ctx, next) { 
     if (typeof console !== 'undefined'); 

      $('.message').on('click', function() { 

       $(".message").show(); 
       alert('its working)'; 

      });  

     next(); 
    }); 
}; 
}); 

然而,當我現在.message點擊,好像沒有任何反應。

有什麼建議嗎?

回答

1

您必須使用angular.element()而不是$(),因爲角度適用於通過angular.element()可訪問的jQlite。

此外,jQlite中不能訪問via類。 該文檔說: angular.element(element) // HTML string or DOMElement to be wrapped into jQuery.