webController.js 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. 'use strict';
  2. angular.module('app').controller('WebController', ['$scope', '$timeout', function($scope, $timeout) {
  3. //lxtalkClient.Invoke('{FB60F992-A0FD-47B3-AAA7-E80DF209C5A4}', '_Register', '', $scope);
  4. $scope.imgView = function(event) {
  5. var img = $(event.target);
  6. console.log(img);
  7. img[0].id = "onView";
  8. if (img[0].naturalWidth > img[0].naturalHeight) {
  9. console.log("111111111");
  10. angular.element(".image-view").addClass("width-Img");
  11. } else {
  12. angular.element(".image-view").removeClass("width-Img");
  13. }
  14. $scope.imgUrl = img[0].src;
  15. $(".image-big").remove();
  16. $(".image-view").append('<img class="image-big" src="' + $scope.imgUrl + '" data-dismiss="modal">');
  17. };
  18. $scope.delSure = function() {
  19. $scope.sure = false;
  20. // var activeClick = $($event.target);
  21. // console.log(activeClick);
  22. // var imgUrl = activeClick[0].parentElement.previousElementSibling.firstElementChild.src;
  23. var imgs = $(".images");
  24. $(".image-big").remove();
  25. console.log(imgs);
  26. for (var i = 0, len = imgs.length; i < len; i++) {
  27. if ($(".images")[i].firstElementChild.id == "onView") {
  28. $(".images")[i].remove();
  29. var imgNum = $("#imgpreview").find('img').length;
  30. if (imgNum == 2) {
  31. angular.element(".images").removeClass("three");
  32. angular.element(".images").addClass("two");
  33. } else if (imgNum = 1) {
  34. angular.element(".images").removeClass("two");
  35. angular.element(".images").addClass("one");
  36. }
  37. return;
  38. }
  39. };
  40. };
  41. $scope.delImg = function() {
  42. $scope.sure = true;
  43. };
  44. $scope.actived = function($event) {
  45. var activeClick = $($event.target);
  46. console.log(activeClick);
  47. if (activeClick[0].nodeName == "A") {
  48. angular.element(".Aa").removeClass("activeColor");
  49. angular.element(".glyphicon").removeClass("activeColor");
  50. activeClick.addClass("activeColor");
  51. } else if (activeClick[0].nodeName == "SPAN") {
  52. angular.element(".Aa").removeClass("activeColor");
  53. angular.element(".glyphicon").removeClass("activeColor");
  54. activeClick.addClass("activeColor");
  55. $(activeClick[0].parentElement).addClass("activeColor");
  56. }
  57. };
  58. $scope.imgPreview = function(fileDom) {
  59. //判断是否支持FileReader
  60. if (window.FileReader) {
  61. var reader = new FileReader();
  62. } else {
  63. alert("您的设备不支持图片预览功能,如需该功能请升级您的设备!");
  64. };
  65. //获取文件
  66. var file = fileDom.files[0];
  67. var imageType = /^image\//;
  68. //是否是图片
  69. if (!imageType.test(file.type)) {
  70. alert("请选择图片!");
  71. return;
  72. };
  73. $("#file")[0].value = "";
  74. //读取完成
  75. reader.onload = function(e) {
  76. // //获取图片dom
  77. // var img = document.getElementById("preview");
  78. // //图片路径设置为读取的图片
  79. // img.src = e.target.result;
  80. var img = new Image,
  81. width = 1080, //image resize
  82. quality = 0.9, //image quality
  83. canvas = document.createElement("canvas"),
  84. drawer = canvas.getContext("2d");
  85. img.src = this.result;
  86. if (img.src) {
  87. var imgNum = $("#imgpreview").find('img').length;
  88. canvas.width = width;
  89. canvas.height = width * (img.height / img.width);
  90. drawer.drawImage(img, 0, 0, canvas.width, canvas.height);
  91. img.src = canvas.toDataURL("image/jpeg", quality);
  92. if (imgNum == 0) {
  93. $("#imgpreview").append('<a data-toggle="modal" data-target="#viewModal" class="thumbnail images"><img onClick="angular.element(this).scope().imgView(event)" src="' + img.src + '"></a>');
  94. angular.element(".images").addClass("one");
  95. } else if (imgNum == 1) {
  96. $("#imgpreview").append('<a data-toggle="modal" data-target="#viewModal" class="thumbnail images"><img onClick="angular.element(this).scope().imgView(event)" src="' + img.src + '"></a>');
  97. angular.element(".images").removeClass("one");
  98. angular.element(".images").addClass("two");
  99. } else if (imgNum >= 2) {
  100. $("#imgpreview").append('<a data-toggle="modal" data-target="#viewModal" class="thumbnail images"><img onClick="angular.element(this).scope().imgView(event)" src="' + img.src + '"></a>');
  101. angular.element(".images").removeClass("two");
  102. angular.element(".images").addClass("three");
  103. }
  104. };
  105. };
  106. reader.readAsDataURL(file);
  107. };
  108. }]);