2016-09-14 137 views
0

有什麼辦法在AngularJS應用程序中觸發所有ng-click函數?每次ng-click觸發事件

我知道我可以通過將它添加到當前綁定到它們的特定ng-ifs的函數中來觸發代碼,但是如果有某種方法可以通過在控制器中的任何ng-click來觸發它,這對我來說會很有用。

謝謝大家!

+0

你能解釋它嗎? –

+0

向我們展示您的代碼,以知道您究竟想說什麼? –

回答

1

您可以重寫ngClick指令以在每次點擊時觸發函數或廣播。

你原來實行修改:

compile: function($element, attr) { 
    var fn = $parse(attr[directiveName]); 
    return function(scope, element, attr) { 
    element.on(lowercase(name), function(event) { 
     scope.$apply(function() { 
     fn(scope, {$event:event}); 
     }); 
    }); 
    }; 
} 
+0

這正是我正在尋找的。接受的答案。感謝大家! – Nimrod

0

根據你的問題。我明白你想要觸發ng-click()的一件事,因爲ng-if因此,如果是這種情況,那麼改用ng-show代替。因爲ng-click在ng-if中不起作用。

但是,如果你想捕獲ng-click()事件觸發,然後編寫ng-click,但這不是一個好的實現。

希望這會有所幫助。謝謝 !