`

javascript 上传图片前预览图片

 
阅读更多

   html

 

<div id="localImag"><img  id="preview" width="-1" height="-1" style="display:none" /></div>
<input type="file" id="file_head" onchange="javascript:setImagePreview();" />

   js

 

<script type="text/javascript">
	function setImagePreview() {
		var docObj = document.getElementById("file_head");
		var fileName = docObj.value;
		if (!fileName.match(/.jpg|.gif|.png|.bmp/i)) {
			alert('您上传的图片格式不正确,请重新选择!');
			return false;
		}

		var imgObjPreview = document.getElementById("preview");
		if (docObj.files && docObj.files[0]) {
			//火狐下,直接设img属性
			imgObjPreview.style.display = 'block';
			imgObjPreview.style.width = '63px';
			imgObjPreview.style.height = '63px';
			//imgObjPreview.src = docObj.files[0].getAsDataURL();
			if (window.navigator.userAgent.indexOf("Chrome") >= 1
					|| window.navigator.userAgent.indexOf("Safari") >= 1) {
				imgObjPreview.src = window.webkitURL
						.createObjectURL(docObj.files[0]);
			} else {
				imgObjPreview.src = window.URL.createObjectURL(docObj.files[0]);
			}
		} else {
			//IE下,使用滤镜
			docObj.select();
			docObj.blur();
			var imgSrc = document.selection.createRange().text;
			var localImagId = document.getElementById("localImag");
			//必须设置初始大小
			localImagId.style.width = "63px";
			localImagId.style.height = "63px";
			//图片异常的捕捉,防止用户修改后缀来伪造图片
			try {
				localImagId.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
				localImagId.filters
						.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
			} catch (e) {
				alert("您上传的图片格式不正确,请重新选择!");
				return false;
			}
			imgObjPreview.style.display = 'none';
			document.selection.empty();
		}
		return true;
	}
</script>

 

   此js解决360浏览器显示图片问题。因为360浏览器6.2用的是Chrome的内核,而

 

window.URL.createObjectURL(docObj.files[0]);

 

   只有在火狐下才认得到,chrome中不认识window.URL.createObjectURL,所有用Safari的window.webkitURL.createObjectURL

 

分享到:
评论

相关推荐

    纯javascript实现上传图片前图片预览,判断图片大小

    在本文中,我们将深入探讨如何使用纯JavaScript实现上传图片前的预览功能,并且检查图片的大小,确保兼容性覆盖到IE7至IE10、Firefox以及Chrome等主流浏览器。这个功能对于用户交互体验有着重要的作用,因为它允许...

    javascript上传图片前预览图片兼容大多数浏览器

    在JavaScript中实现上传图片前的预览功能是一项常见的需求,特别是在网页表单中,用户在上传图片之前能够看到即将上传的图片效果。这个功能通过利用HTML5的File API以及对不同浏览器的兼容性处理来实现。以下是一个...

    fileupload上传图片前预览

    下面将详细介绍如何在ASP.NET中实现FileUpload控件上传图片前的预览功能,同时兼容IE6、IE7、IE8以及Firefox等主流浏览器。 1. **HTML结构与JavaScript预览** 在前端页面上,我们需要一个FileUpload控件让用户选择...

    JS+asp.net+图片上传+预览+支持多上传+上传前预览

    在图片上传中,JS通常用于处理用户选择文件后在本地预览图片,验证文件类型和大小,以及提供一个友好的用户体验,如进度条显示上传进度。 1. **图片预览**:使用HTML5的FileReader API,开发者可以读取用户选择的...

    js预览图片 上传前预览图片 兼容ie6.7.8.9 ff 谷歌 opera 苹果浏览器不兼容

    在JavaScript编程中,预览图片是一项常见的需求,特别是在文件上传功能中。用户在选择图片文件后,能够在上传之前先预览图片,这样可以提供更好的用户体验,确保用户上传的图片符合预期。这个标题提到的"js预览图片 ...

    javascript 上传图片预览效果

    总的来说,实现JavaScript上传图片预览效果需要结合HTML、CSS和JavaScript,利用File API读取文件,并通过`&lt;img&gt;`标签显示预览。在旧版浏览器中,可能需要依赖额外的库或技术来达到兼容性。这些文件名表明了实现这一...

    javascript图片上传预览

    在JavaScript中实现图片上传预览是一项常见的前端功能,它允许用户在正式上传图片到服务器之前先看到图片的效果,提供了一种良好的用户体验。这个过程通常包括选择图片、读取图片数据、处理图片(如尺寸调整)以及在...

    JavaScript 上传图片预览效果.zip

    在JavaScript中实现图片上传预览效果是Web开发中常见的需求,尤其在用户需要在提交前查看上传图片的情况下。这一功能可以提升用户体验,确保用户知道自己上传的图片是什么样子。以下将详细讲解如何使用JavaScript来...

    jquery图片上传前预览 无需上传至服务器

    在IT行业中,尤其是在Web开发领域,用户经常需要上传图片,而提供一个图片上传前的预览功能能够极大地提升用户体验。这个“jquery图片上传前预览 无需上传至服务器”的技术方案,就是解决这一问题的一种方法。它允许...

    input file上传图片预览

    在前端开发中,"input file上传图片预览"是一个常见的需求,它允许用户选择本地的图像文件,并在上传前提供预览。这个功能在许多网站和应用中都很实用,例如社交媒体平台、在线编辑器或者个人资料设置等。下面将详细...

    html+javascript头像上传预览

    当文件读取完成后,`onload`事件会被触发,更新预览图片的`src`属性。 至于CSS,它可以用来改变预览头像的样式,使其看起来更符合圆形头像的要求。例如,我们可以设置一个带有圆角的图片容器,并通过CSS的`border-...

    js图片上传并预览图片

    在JavaScript中实现图片上传并预览功能是一项常见的前端任务,主要涉及到HTML5的...以上是实现“js图片上传并预览图片”的主要技术点和步骤,理解并掌握这些知识点,可以构建出稳定且用户体验良好的图片上传预览功能。

    js上传图片预览图片.pdf

    在JavaScript代码中,我们可以通过 `sender.files[0]` 获取选择的文件对象,并通过 `getAsDataURL()` 方法将其转换为DataURL形式,以便在浏览器中预览图片。 2. 图片预览实现 在CSS中,我们定义了三个对象:`#...

    .net批量上传图片带预览功能

    在.NET开发环境中,批量上传图片并提供预览和进度条功能是常见的需求,尤其是在构建Web应用时。这个项目提供了一种实现方式,包括源码,可以直接用于开发中。以下是对这个知识点的详细解释: 批量上传图片:批量...

    JavaScript 图片上传预览效果

    图片上传预览是一种在图片上传之前对图片进行本地预览的技术。 使用户选择图片后能立即查看图片,而不需上传服务器,提高用户体验。 但随着浏览器安全性的提高,要实现图片上传预览也越来越困难。 不过群众的智慧是...

    支持图片上传及实时显示,可设置显示图片的大小。由php、Ajax、javascript开发

    这个项目是用PHP、Ajax和JavaScript这三种技术实现的,允许用户上传图片并即时预览,同时还可以调整显示的图片大小。接下来,我们将深入探讨这些技术以及它们在实现此功能中的角色。 **PHP** 是一种广泛使用的...

    .Net图片上传预览

    - **CSS样式**:为了美观和用户体验,可以添加CSS样式调整预览图片的大小、位置等。 2. **后端处理**: - **接收文件**:在.NET后端,我们通常使用`HttpPostedFileBase`类来接收上传的文件。用户提交表单时,后端...

    javascript实现图片上传

    JavaScript 图片上传预览功能是网页开发中常见的一种交互设计,允许用户在正式提交文件之前先查看所选图片的效果。这种功能通常用于提高用户体验,确保用户上传的图片符合预期的格式和尺寸。以下是对给定代码的详细...

    Javascript写的多图片上传带图片预览功能

    这样的组合提供了良好的用户体验,让用户能够在上传前预览图片,同时在后台进行安全有效的文件处理。在实际项目中,还需要考虑错误处理、文件大小限制、安全验证(如防止跨站脚本攻击XSS)等细节,以确保整个上传...

Global site tag (gtag.js) - Google Analytics