javascript - Remove img-element from Angular page -


i'm creating angular web app in want show image @ first, when click on button, want remove default image , replace videostream of webcam. far, removing image - element remains hard...

angular.module('qrwebapp').directive('qrscanner', ['$timeout', 'openscannerservice', function($timeout, openscannerservice) {   return {     restrict: 'e',     scope: {       ngsuccess: '&ngsuccess',       ngerror: '&ngerror',       ngvideoerror: '&ngvideoerror'     },     link: function(scope, element, attrs) {       var isopen;       var onlyopenonce = 0;        var image = document.createelement('img');       image.setattribute('id', 'defaultimage');       image.setattribute('src', 'assets/images/defaultimage.png');       image.setattribute('width', '400');       image.setattribute('height', '300');       image.setattribute('alt', 'defaultimage');        scope.$on('handlepublish', function() {         isopen = openscannerservice.sharedboolean;          if(isopen){         //some code            //finding image on angular page                var findedelement = angular.element('#defaultimage');            findedelement.remove();             var context;             if(onlyopenonce < 1){              angular.element(element).append(video);              angular.element(element).append(canvas);              context = canvas.getcontext('2d');             }             onlyopenonce++;     }      else {        angular.element(element).append(image);     }   }); }   };  }]); 

does have idea i'm doing wrong?

you should not try remove dom wise. instead use ng-if conditionally renders elements on page.

for e.g., in html

    <img id="imgid" src="assets/images/defaultimage.png" ng-if="renderimage" />     <canvas ng-if="rendercanvas"></canvas> 

and in directive:

    link: function(scope, element, attrs) {         scope.renderimage = false; // renders image default         scope.rendercanvas = true; // renders canvas default          scope.$on('handlepublish', function() {             scope.renderimage = false; // image element removed dom             scope.rendercanvas = true; // canvas element rendered in dom         }  

Comments

Popular posts from this blog

java - Spring Data JPA: Why findOne(id) executing delete query internally? -

python - Mongodb How to add addtional information when aggregating? -

java - Incorrect order of records in M-M relationship in hibernate -