手机头像上传预览的问题
function PreviewImage(fileObj, imgPreviewId, divPreviewId) {
var allowExtention = ".jpg,.bmp,.gif,.png"; //允许上传文件的后缀名document.getElementById("hfAllowPicSuffix").value;
var extention = fileObj.value.substring(fileObj.value.lastIndexOf(".") + 1).toLowerCase();
var browserVersion = window.navigator.userAgent.toUpperCase();
if (allowExtention.indexOf(extention) > -1) {
if (fileObj.files) {//HTML5实现预览,兼容chrome、火狐7+等
if (window.FileReader) {
var reader = new FileReader();
reader.onload = function (e) {
document.getElementById(imgPreviewId).setAttribute("src", e.target.result);
}
reader.readAsDataURL(fileObj.files[0]);
} else if (browserVersion.indexOf("SAFARI") > -1) {
alert("不支持Safari6.0以下浏览器的图片预览!");
}
} else if (browserVersion.indexOf("MSIE") > -1) {
if (browserVersion.indexOf("MSIE 6") > -1) {//ie6
document.getElementById(imgPreviewId).setAttribute("src", fileObj.value);
} else {//ie[7-9]
fileObj.select();
if (browserVersion.indexOf("MSIE 9") > -1)
fileObj.blur(); //不加上document.selection.createRange().text在ie9会拒绝访问
var newPreview = document.getElementById(divPreviewId + "New");
if (newPreview == null) {
newPreview = document.createElement("div");
newPreview.setAttribute("id", divPreviewId + "New");
newPreview.style.width = document.getElementById(imgPreviewId).width + "px";
newPreview.style.height = document.getElementById(imgPreviewId).height + "px";
newPreview.style.border = "solid 1px #d2e2e2";
}
newPreview.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='scale',src='" + document.selection.createRange().text + "')";
var tempDivPreview = document.getElementById(divPreviewId);
tempDivPreview.parentNode.insertBefore(newPreview, tempDivPreview);
tempDivPreview.style.display = "none";
}
} else if (browserVersion.indexOf("FIREFOX") > -1) {//firefox
var firefoxVersion = parseFloat(browserVersion.toLowerCase().match(/firefox\/([\d.]+)/)[1]);
if (firefoxVersion < 7) {//firefox7以下版本
document.getElementById(imgPreviewId).setAttribute("src", fileObj.files[0].getAsDataURL());
} else {//firefox7.0+
document.getElementById(imgPreviewId).setAttribute("src", window.URL.createObjectURL(fileObj.files[0]));
}
} else {
document.getElementById(imgPreviewId).setAttribute("src", fileObj.value);
}
} else {
alert("仅支持" + allowExtention + "为后缀名的文件!");
fileObj.value = ""; //清空选中文件
$("#imgHeadPhoto").attr("src", "../images/NoSmallImg.gif");
if (browserVersion.indexOf("MSIE") > -1) {
fileObj.select();
document.selection.clear();
}
fileObj.outerHTML = fileObj.outerHTML;
}
} <asp:FileUpload id="imgFaceUrl" style="display:none;" runat="server" onchange="PreviewImage(this,'imgFace','divPreview');" />
<a id="face" class="btn53" href="javascript:void(0);" >
<span>头像</span>
<img alt="" class="grzxtx" id="imgFace" runat="server" src="../../images/bg.jpg" />
</a>
<script type="text/javascript">
window.jQuery(function() {
window.jQuery('#face').click(function() {
window.jQuery('#imgFaceUrl').click();
});
});
</script>
只有iPhone看不到预览图(不显示),用chrome的手机模式调试不出(显示正常),怎么修改呢?
...全文
相关推荐
CI预览截取头像上传源码
**响应式设计**:考虑到不同设备的屏幕尺寸,头像预览和上传功能应具有良好的响应式布局,以适应手机、平板和桌面等多种设备。以上就是“CI预览截取头像上传源码”所涵盖的主要技术点。
html5手机端头像剪裁上传【标准版】
HTML5手机端头像剪裁上传技术是一种在移动设备上实现用户自定义头像裁剪并上传的功能。
基于amazeui框架头像上传代码.zip
**响应式设计**:AmazeUI作为响应式的框架,确保头像上传功能在不同设备上都能良好显示和操作,包括手机、平板和桌面电脑。7.
上传头像jsp
**安全性考虑**:上传头像功能需要注意安全问题,如防止恶意文件上传、大小限制、文件类型检查等,以避免服务器被攻击或资源滥用。10.
Uniapp上传头像(2024记录)
**图片裁剪** 为了适应不同场景的需求,可能需要用户上传的头像是指定尺寸或比例。uni-app提供了`uni.chooseImage`接口,可以调用手机相册或相机选取图片,并且支持裁剪功能。


