js上传图片预览的实现方法
发布时间 - 2026-01-11 01:03:00 点击率:次本文实例为大家分享了js上传图片预览的方法,供大家参考,具体内容如下
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>图片上传本地预览</title>
<style type="text/css">
#preview{width:260px;height:190px;border:1px solid #000;overflow:hidden;}
#imghead {filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=image);}
</style>
<script type="text/javascript">
//图片上传预览 IE是用了滤镜。
function previewImage(file)
{
var MAXWIDTH = 260;
var MAXHEIGHT = 180;
var div = document.getElementById('preview');
if (file.files && file.files[0])
{
div.innerHTML ='<img id=imghead>';
var img = document.getElementById('imghead');
img.onload = function(){
var rect = clacImgZoomParam(MAXWIDTH, MAXHEIGHT, img.offsetWidth, img.offsetHeight);
img.width = rect.width;
img.height = rect.height;
// img.style.marginLeft = rect.left+'px';
img.style.marginTop = rect.top+'px';
}
var reader = new FileReader();
reader.onload = function(evt){img.src = evt.target.result;}
reader.readAsDataURL(file.files[0]);
}
else //兼容IE
{
var sFilter='filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src="';
file.select();
var src = document.selection.createRange().text;
div.innerHTML = '<img id=imghead>';
var img = document.getElementById('imghead');
img.filters.item('DXImageTransform.Microsoft.AlphaImageLoader').src = src;
var rect = clacImgZoomParam(MAXWIDTH, MAXHEIGHT, img.offsetWidth, img.offsetHeight);
status =('rect:'+rect.top+','+rect.left+','+rect.width+','+rect.height);
div.innerHTML = "<div id=divhead style='width:"+rect.width+"px;height:"+rect.height+"px;margin-top:"+rect.top+"px;"+sFilter+src+"\"'></div>";
}
}
function clacImgZoomParam( maxWidth, maxHeight, width, height ){
var param = {top:0, left:0, width:width, height:height};
if( width>maxWidth || height>maxHeight )
{
rateWidth = width / maxWidth;
rateHeight = height / maxHeight;
if( rateWidth > rateHeight )
{
param.width = maxWidth;
param.height = Math.round(height / rateWidth);
}else
{
param.width = Math.round(width / rateHeight);
param.height = maxHeight;
}
}
param.left = Math.round((maxWidth - param.width) / 2);
param.top = Math.round((maxHeight - param.height) / 2);
return param;
}
</script>
</head>
<body>
<div id="preview">
<img id="imghead" width=100 height=100 border=0 src='<%=request.getContextPath()%>/images/defaul.jpg'>
</div>
<input type="file" onchange="previewImage(this)" />
</body>
</html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# js上传图片预览方法
# js上传图片预览
# js图片预览
# javascript HTML5文件上传FileReader API
# 借助FileReader实现将文件编码为Base64后通过AJAX上传
# 谈谈基于iframe、FormData、FileReader三种无刷新上传文件的方法
# File
# FileReader 和 Ajax 文件上传实例分析(php)
# node.js读取文件到字符串的方法
# node.js实现逐行读取文件内容的代码
# PHP 读取文件内容代码(txt
# js等)
# JSP读取文件实例
# JavaScript使用readAsDataUrl方法预览图片
# JavaScript通过filereader接口读取文件
# 滤镜
# 图片上传
# 用了
# 大家分享
# 上传图片
# 具体内容
# 大家多多
# solid
# border
# hidden
# overflow
# width
# preview
# css
# height
# px
# imghead
# javascript
# script
# image
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】
谷歌浏览器如何更改浏览器主题 Google Chrome主题设置教程
湖南网站制作公司,湖南上善若水科技有限公司做什么的?
如何在阿里云购买域名并搭建网站?
高端网站建设与定制开发一站式解决方案 中企动力
java中使用zxing批量生成二维码立牌
Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程
Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】
Python自然语言搜索引擎项目教程_倒排索引查询优化案例
通义万相免费版怎么用_通义万相免费版使用方法详细指南【教程】
javascript中的try catch异常捕获机制用法分析
Laravel如何实现数据导出到PDF_Laravel使用snappy生成网页快照PDF【方案】
香港服务器WordPress建站指南:SEO优化与高效部署策略
Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案
如何将凡科建站内容保存为本地文件?
最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?
iOS UIView常见属性方法小结
Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID
Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧
Laravel模型事件有哪些_Laravel Model Event生命周期详解
微信公众帐号开发教程之图文消息全攻略
千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】
如何在HTML表单中获取用户输入并结合JavaScript动态控制复利计算循环
英语简历制作免费网站推荐,如何将简历翻译成英文?
php 三元运算符实例详细介绍
Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】
移动端脚本框架Hammer.js
Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布
如何续费美橙建站之星域名及服务?
如何在VPS电脑上快速搭建网站?
Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】
Python文本处理实践_日志清洗解析【指导】
大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?
linux top下的 minerd 木马清除方法
如何在云虚拟主机上快速搭建个人网站?
jQuery 常见小例汇总
Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优
C#如何调用原生C++ COM对象详解
bootstrap日历插件datetimepicker使用方法
济南网站建设制作公司,室内设计网站一般都有哪些功能?
Win11怎么设置默认图片查看器_Windows11照片应用关联设置
laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
如何快速搭建安全的FTP站点?
HTML透明颜色代码怎么让下拉菜单透明_下拉菜单透明背景指南【技巧】
三星、SK海力士获美批准:可向中国出口芯片制造设备
如何在IIS中新建站点并配置端口与物理路径?
Laravel如何配置中间件Middleware_Laravel自定义中间件拦截请求与权限校验【步骤】
Python图片处理进阶教程_Pillow滤镜与图像增强
BootStrap整体框架之基础布局组件

