angularjs 實現圖片上傳實時預覽
第一部分: html部分
angularjs 主要定義了 upload-img 指令,然後還有用到ng-src, 以及angularjs必須的檔案
完整版下載網址:http://download.csdn.net/detail/u012767607/9817358
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" data-ng-app="app"><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<link href="css/special.css" rel="stylesheet" />
<script src="js/jquery-1.8.3.min.js"></script>
<script src="js/special.js"></script>
<script src="js/angular-1.3.0.js"></script>
<script src="js/app.js"></script>
<script src="js/app/uploadPhoto.js"></script>
</head>
<body>
<div class="sp-page-content" ng-controller="addPhotoCtrl as ctl">
<div class="sp-page-box">
<div class="sp-page-boxcolumn span1">
照片:
</div>
<div class="sp-page-boxcolumn span2">
<span class="sp-upload">
<img class="sp-upload-photo" alt="" ng-src="{{ctl.info.photo1}}" />
<input type="file" upload-img class="sp-upload-img" />
</span>
</div>
</div>
<br />
<input type="button" value="打 印" ng-click="ctl.print()" class="sp-btn-blue" />
</div>
</body>
</html>
效果圖:
第二部分:js部分
2.1. app.js部分
'use strict';
var app = angular.module('app', [
]);
2.2. /uploadPhoto.js 部分
app.controller("addPhotoCtrl", ["$http", function ($http) {
var self = this;
self.info = {
photo1: "",
photo2: ""
};
self.print = function () {
console.log(self.info);
};
}]);
app.directive("uploadImg", function () {
return {
restrict: 'AE',
scope: false,
link: function (scope, elem, attrs) {
elem.bind('click', function () {
$(this).val('');
});
elem.change(function () {
var file = this.files[0];
if (file.size > 52428800) {
alert("圖片大小不大於50M");
file = null;
return false;
}
var fileName = file.name;
var postfix = fileName.substring(fileName.lastIndexOf(".") + 1).toLowerCase();
if (postfix != "jpg" && postfix != "png") {
alert("圖片僅支援png、jpg型別的檔案");
fileName = "";
file = null;
return false;
}
var fileUrl = $(this).val();
$(this).parent().children(".sp-upload-photo").attr("data-url", fileUrl);
var getimg = $(this).parent().children(".sp-upload-photo");
var filereader = new FileReader();
filereader.readAsDataURL(file);
$(filereader).load(function () {
getimg.attr("src", this.result);
console.log(this.result);
});
});
}
}
});
相關文章
- SpringMVC實現ajax上傳圖片實時預覽SpringMVC
- jsp+springmvc實現檔案上傳、圖片上傳和及時預覽圖片JSSpringMVC
- FileReader初步使用實現上傳圖片預覽效果
- 實現圖片預覽
- 前端實現圖片上傳預覽並轉換base64前端
- javascript和HTML5上傳圖片之前實現預覽效果JavaScriptHTML
- 短視訊平臺開發,圖片上傳和圖片預覽功能實現
- vue實現圖片預覽Vue
- vue圖片預覽上傳Vue
- js圖片上傳預覽JS
- FileReader與URL.createObjectURL實現圖片、視訊上傳預覽Object
- jq實現上傳頭像並實時預覽功能
- input file上傳圖片預覽
- vue 實現貼上上傳圖片Vue
- 用createObjectURL實現本地圖片預覽Object地圖
- javauploadify上傳圖片並預覽Java
- formData原生實現圖片上傳ORM
- html input type=file 選擇圖片,圖片預覽 純html js實現圖片預覽HTMLJS
- jQuery圖片上傳前先在本地預覽jQuery
- 菜鳥學JS(一)——上傳圖片之上傳前預覽圖片JS
- PHP實現圖片(檔案)上傳PHP
- 基於 vue.js 實現圖片本地預覽 + 裁剪 + 壓縮 + 上傳的功能(二)Vue.js
- 直播電商平臺開發,釋出多圖片上傳到伺服器並實現圖片預覽功能伺服器
- office轉pdf和圖片實現線上預覽
- 上傳圖片本地預覽例項程式碼
- 圖片上傳預覽效果程式碼例項
- PHP仿微信多圖片預覽上傳功能PHP
- node+express實現圖片上傳功能Express
- layui中實現上傳圖片壓縮UI
- 通過API介面實現圖片上傳API
- HTML5實現圖片上傳2HTML
- JS相容各個瀏覽器的本地圖片上傳即時預覽效果JS瀏覽器地圖
- 相容所有瀏覽器的圖片上傳本地預覽效果瀏覽器
- Flutter上線專案實戰——圖片視訊預覽Flutter
- FileReader()讀取檔案、圖片上傳預覽
- 面試題:我現在上傳圖片的時候提前預覽到圖片怎麼辦?面試題
- element-ui+Vue實現的圖片上傳UIVue
- Ajax+PHP實現非同步圖片上傳PHP非同步