2014-01-18 35 views
0

後鼠標處理程序不工作,我有以下函數,其中我通過canvas元素從我的javascript代碼之一:添加我添加AngularJS

function addMouseHandler(canvas) { 
    console.log(canvas); //first console log for logging canvas 
    canvas.addEventListener('mousemove', function (e) { 
     onMouseMove(e); 
    }, false); 
    canvas.addEventListener('mousedown', function (e) { 
     console.log('here'); //second log for logging we are inside event listener 
     onMouseDown(e); 
    }, false); 
    canvas.addEventListener('mouseup', function (e) { 
     onMouseUp(e); 
    }, false); 
} 

,如果我沒有在我的代碼添加AngularJS這工作得很好。但是在添加AngularJS之後,代碼不會進入任何addEventListener()方法。

我的代碼仍然記錄第一的console.log(),它正確地記錄我的畫布元素:

<canvas width="945" height="550" id="mycanvas"></canvas> 

但現在沒有變的addEventListener()方法中。我使用console.log('here')進行了檢查,但從未被調用過。

更新:我剛剛添加ng-app =「myApp」到我的body元素爲<body ng-app="myApp">,然後此addEventListener停止工作。沒有其他angularjs在我的代碼。

+0

By _「please advice」_你的意思是_「請猜測」_?如果不是如何發佈一些與Angular相關的代碼? – gkalpak

+0

我剛添加ng-app =「myApp」到我的元素爲ng-app =「myApp」>,然後這個addEventListener停止工作。沒有其他angularjs在我的代碼。我也會從我的問題中刪除'請教'。 –

+0

然後我們需要提供與Angular相關的代碼。 – gkalpak

回答

0

好的發現了這個問題...我有2次宣佈控制器...一次在ng控制器和其他myApp.controller()。所以我的畫布被創造了兩次,老鼠勒索者被搞砸了。