设置SRC值(iOS)后图像被截断
我在iOS/Safari/Chrome上遇到了一个奇怪的限制。 用户可以选择一个图像,然后将其文件内容粘贴到输入元素中 两者的长度不相等。这是iOS限制吗设置SRC值(iOS)后图像被截断,ios,safari,webkit,Ios,Safari,Webkit,我在iOS/Safari/Chrome上遇到了一个奇怪的限制。 用户可以选择一个图像,然后将其文件内容粘贴到输入元素中 两者的长度不相等。这是iOS限制吗 L.users.importConfigurations = function(options) { var target = null; this._getInputFileElement = function() { var that = this; fileInput = $('<input ty
L.users.importConfigurations = function(options) {
var target = null;
this._getInputFileElement = function() {
var that = this;
fileInput = $('<input type="file" accept="image/*" style="display:none;" capture="camera" />');
fileInput.change(function() {
that._handleFiles(fileInput);
});
return fileInput;
};
this.showFileSelectionDialog = function() {
var fileInput = this._getInputFileElement();
fileInput.click();
};
this._handleFiles = function(fileInput) {
var files = fileInput[0].files;
if (files && files.length) this._readFile(files[0]);
};
this._readFile = function(fileInfo) {
var that = this;
var reader = new FileReader();
reader.onload = function(e) {
that._uploadFile(e.target.result);
};
reader.readAsDataURL(fileInfo);
};
this._uploadFile = function(fileData) {
var fbValue = $(options.target).closest('.fileboxframe').find(".fileboxvalue");
if (fbValue && fbValue.length > 0) {
alert("Length before: " + fileData.length.toString());
fbValue.attr('src', fileData);
alert("Length after (Should be same): " + fileData.length.toString());
alert("Length after (Should be same): " + fbValue.attr("src").length.toString());
}
};
this.showFileSelectionDialog();
};
https://jsfiddle.net/ChristophWeigert/81qu41L5/
L.users.importConfiguration=函数(选项){
var目标=null;
这是。_getInputFileElement=函数(){
var=这个;
fileInput=$('');
fileInput.change(函数(){
即._handleFiles(fileInput);
});
返回文件输入;
};
this.showFileSelectionDialog=函数(){
var fileInput=this.\u getInputFileElement();
fileInput.click();
};
此._handleFiles=函数(fileInput){
var files=fileInput[0]。文件;
如果(files&&files.length)这个.u readFile(files[0]);
};
此._readFile=函数(fileInfo){
var=这个;
var reader=new FileReader();
reader.onload=函数(e){
上传文件(e.target.result);
};
reader.readAsDataURL(fileInfo);
};
此._uploadFile=函数(fileData){
var fbValue=$(options.target).closest('.fileboxframe').find(.fileboxvalue”);
如果(fbValue&&fbValue.length>0){
警报(“长度在:+fileData.Length.toString()之前”);
fbValue.attr('src',fileData);
警报(“后面的长度(应相同):”+fileData.Length.toString());
警报(“之后的长度(应相同):”+fbValue.attr(“src”).Length.toString());
}
};
这个.showFileSelectionDialog();
};
https://jsfiddle.net/ChristophWeigert/81qu41L5/
我在这个主题中找到了答案:
解决方案是使用textare而不是textbox