公司电脑限制太多,做个备忘录。上传预览图片ie滤镜图片宽高不受控制的问题
2017-04-27 10:26
519 查看
根据网上前辈们的代码整合的
html代码:
<tr id="seal">
<td colspan="4">
<div id="imgPreview">
<img id="cn_songhuo" src="../Image/SupImg/upimg.gif" alt="送货印章"/>
<input name="uploadify" id="file1" value="" class="file"
accept="image/jpg,image/jpeg,image/png,image/bmp,image/gif" multiple="" type="file" onchange="cn_shchange()"/>
<label>送货印章</label>
</div>
</td>
<td colspan="3">
<div>
<img id="cn_caiwu" src="../Image/SupImg/upimg.gif" alt="财务印章"/>
<input name="FinancialSeal_CN" id="file2" class="file" value=""
accept="image/jpg,image/jpeg,image/png,image/bmp,image/gif" multiple="" type="file" onchange="cn_cwchange()" />
<label>财务印章</label>
</div>
</td>
<td colspan="4">
<div>
<img id="songhuo" src="../Image/SupImg/upimg.gif" alt="送货印章"/>
<input name="DeliverySeal" id="file3" class="file" value=""
accept="image/jpg,image/jpeg,image/png,image/bmp,image/gif" multiple="" type="file" onchange="shchange()" />
<label>送货印章</label>
</div>
</td>
<td>
<div>
<img id="caiwu" src="../Image/SupImg/upimg.gif" alt="财务印章"/>
<input name="FinancialSeal" id="file4" class="file" value=""
accept="image/jpg,image/jpeg,image/png,image/bmp,image/gif" multiple="" type="file" onchange="cwchange()"/>
<label>财务印章</label>
</div>
</td>
</tr>
css样式:
#seal td div{
width:290px; height:200px;
text-align:center;
vertical-align:middle;
position: relative; /* 保证子元素的定位 */
width: 100%;
height: 100%;
cursor: pointer;
}
#seal td div label
{
position:absolute;bottom:0;right:0;
color:#999999;
}
#seal td div img{
width:190px;
height:180px;
}
.file {
display: block;
position: absolute;
top: 0;
left: 0;
width: 100%; /* 宽高和外围元素保持一致 */
height: 100%;
opacity: 0;
-moz-opacity: 0; /*兼容老式浏览器 */
filter: alpha(opacity=0); /* 兼容ie */
}
js:
<script type="text/javascript">
$(document).ready(function () {
})
function cn_shchange()
{
var pic = document.getElementById("cn_songhuo"),
file = document.getElementById("file1");
preview(pic, file);
}
function cn_cwchange()
{
var pic = document.getElementById("cn_caiwu");
file = document.getElementById("file2");
preview(pic,file);
}
function shchange()
{
var pic = document.getElementById("songhuo");
file = document.getElementById("file3");
preview(pic, file);
}
function cwchange()
{
var pic = document.getElementById("caiwu");
file = document.getElementById("file4");
preview(pic, file);
}
function preview(pic, file) {
var ext = file.value.substring(file.value.lastIndexOf(".") + 1).toLowerCase();
// gif在IE浏览器暂时无法显示
if (ext != 'png' && ext != 'jpg' && ext != 'jpeg'&&ext!='gif'&&ext!='bmp') {
alert("上传的文件必须为常见图片格式!");
return;
}
var isIE = navigator.userAgent.match(/MSIE/) != null,
isIE6 = navigator.userAgent.match(/MSIE 6.0/) != null;
if (isIE) {
file.select();
var reallocalpath = document.selection.createRange().text;
// IE6浏览器设置img的src为本地路径可以直接显示图片
if (isIE6) {
pic.src = reallocalpath;
pic.style.width = '190px'
pic.style.height='180px'
} else {
pic.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
pic.filters("DXImageTransform.Microsoft.AlphaImageLoader").src = reallocalpath;
pic.src = 'data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==';
}
} else {
html5Reader(file,pic);
}
}
function html5Reader(file,pic) {
var file = file.files[0];
var reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = function (e) {
//var pic = document.getElementById("cn_songhuo");
pic.src = this.result;
pic.style.width = '180px';
pic.style.height = '190px';
}
}
</script>
html代码:
<tr id="seal">
<td colspan="4">
<div id="imgPreview">
<img id="cn_songhuo" src="../Image/SupImg/upimg.gif" alt="送货印章"/>
<input name="uploadify" id="file1" value="" class="file"
accept="image/jpg,image/jpeg,image/png,image/bmp,image/gif" multiple="" type="file" onchange="cn_shchange()"/>
<label>送货印章</label>
</div>
</td>
<td colspan="3">
<div>
<img id="cn_caiwu" src="../Image/SupImg/upimg.gif" alt="财务印章"/>
<input name="FinancialSeal_CN" id="file2" class="file" value=""
accept="image/jpg,image/jpeg,image/png,image/bmp,image/gif" multiple="" type="file" onchange="cn_cwchange()" />
<label>财务印章</label>
</div>
</td>
<td colspan="4">
<div>
<img id="songhuo" src="../Image/SupImg/upimg.gif" alt="送货印章"/>
<input name="DeliverySeal" id="file3" class="file" value=""
accept="image/jpg,image/jpeg,image/png,image/bmp,image/gif" multiple="" type="file" onchange="shchange()" />
<label>送货印章</label>
</div>
</td>
<td>
<div>
<img id="caiwu" src="../Image/SupImg/upimg.gif" alt="财务印章"/>
<input name="FinancialSeal" id="file4" class="file" value=""
accept="image/jpg,image/jpeg,image/png,image/bmp,image/gif" multiple="" type="file" onchange="cwchange()"/>
<label>财务印章</label>
</div>
</td>
</tr>
css样式:
#seal td div{
width:290px; height:200px;
text-align:center;
vertical-align:middle;
position: relative; /* 保证子元素的定位 */
width: 100%;
height: 100%;
cursor: pointer;
}
#seal td div label
{
position:absolute;bottom:0;right:0;
color:#999999;
}
#seal td div img{
width:190px;
height:180px;
}
.file {
display: block;
position: absolute;
top: 0;
left: 0;
width: 100%; /* 宽高和外围元素保持一致 */
height: 100%;
opacity: 0;
-moz-opacity: 0; /*兼容老式浏览器 */
filter: alpha(opacity=0); /* 兼容ie */
}
js:
<script type="text/javascript">
$(document).ready(function () {
})
function cn_shchange()
{
var pic = document.getElementById("cn_songhuo"),
file = document.getElementById("file1");
preview(pic, file);
}
function cn_cwchange()
{
var pic = document.getElementById("cn_caiwu");
file = document.getElementById("file2");
preview(pic,file);
}
function shchange()
{
var pic = document.getElementById("songhuo");
file = document.getElementById("file3");
preview(pic, file);
}
function cwchange()
{
var pic = document.getElementById("caiwu");
file = document.getElementById("file4");
preview(pic, file);
}
function preview(pic, file) {
var ext = file.value.substring(file.value.lastIndexOf(".") + 1).toLowerCase();
// gif在IE浏览器暂时无法显示
if (ext != 'png' && ext != 'jpg' && ext != 'jpeg'&&ext!='gif'&&ext!='bmp') {
alert("上传的文件必须为常见图片格式!");
return;
}
var isIE = navigator.userAgent.match(/MSIE/) != null,
isIE6 = navigator.userAgent.match(/MSIE 6.0/) != null;
if (isIE) {
file.select();
var reallocalpath = document.selection.createRange().text;
// IE6浏览器设置img的src为本地路径可以直接显示图片
if (isIE6) {
pic.src = reallocalpath;
pic.style.width = '190px'
pic.style.height='180px'
} else {
pic.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
pic.filters("DXImageTransform.Microsoft.AlphaImageLoader").src = reallocalpath;
pic.src = 'data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==';
}
} else {
html5Reader(file,pic);
}
}
function html5Reader(file,pic) {
var file = file.files[0];
var reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = function (e) {
//var pic = document.getElementById("cn_songhuo");
pic.src = this.result;
pic.style.width = '180px';
pic.style.height = '190px';
}
}
</script>
相关文章推荐
- 图片上传并预览(IE,火狐浏览器兼容问题)
- 上传图片快速预览HTML5 FileReader + Window.URL+滤镜(兼容低版本IE)
- IE8 用滤镜实现上传预览图片,解决C:\fakepath\*.jpg问题,获取本地路径
- 关于eWebEditor突破上传图片大小限制的问题
- 在IE7关闭窗口,上传图片无法预览,window.status无效问题解决办法
- Firefox 和IE上传图片实现预览
- js 上传图片预览问题
- JS预览上传图片发现的问题
- IE7下图片上传预览实现
- JS 预览上传图片,兼容IE、firefox等所有浏览器
- JSP上传图片预览问题--解决
- 兼容IE,FF的上传图片预览
- js 上传图片预览问题
- 上传图片预览问题
- 兼容IE、FF的图片上传预览
- 解决windows2003图片上传大小限制问题
- 图片上传问题(含网页图片预览)
- 今天再做上传图片时候遇到了一个JS 图片预览问题
- 在IE7关闭窗口,上传图片无法预览,window.status无效问题解决办法
- Domino上传图片预览及问题解决