I am developing small web page for mobile devices with Angular. I want to toggle click listener for whole page like
$('.page').on('click',...);
$('.page').off('click',...);
but in Angular way. And I don't want to use ng-Click with some conditions because most of the time the click should not work, it is just for error handling. Is it possible or I need to user pure js/jQuery?
Panel HTML:
<div class="alert error" ng-show="errorMessage">
<div class="alert-text">{{ errorMessage }}</div>
</div>
ngIf.ngIf should refer to an assignable variable on the scope ng-if='myFunc()' or ng-if='var1 || var2'here is a plunker: http://plnkr.co/edit/fmNH2PbRrruRqGFYiui1?p=preview
Directive:
app.directive('errorBox', function($document, $parse){
return {
link: function(scope,elm,attrs) {
var clickHandler = function(){
scope.$apply(function(){
$parse(attrs.ngIf).assign(scope.$parent,'')
})
$document.off('click', clickHandler);
};
$document.on('click', clickHandler)
}
}
});
html:
<div ng-if="errorMessage" error-box class="alert error">
<div class="alert-text">{{ errorMessage }}</div>
</div>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With