Tôi có trang web có trường tải lên nhưng input
bị ẩn với display: none;
và tôi có một số div
để gọi hành động này.Safari trên iOS 9 không kích hoạt sự kiện nhấp chuột trên tệp đầu vào bị ẩn
Nó hoạt động trên iOS 8, nhưng bây giờ sau khi cập nhật iOS 9, không có gì xảy ra khi tôi chạm vào div.
Tôi đã thử sử dụng [0].click()
hoặc VanillaJS thuần túy như document.getElementById('file_input').click()
và không có gì hoạt động.
Tất cả những phương pháp làm việc giữa iOS 5 và iOS 8.
Nếu bạn muốn, liên kết với ví dụ này trên JSFiddle:https://jsfiddle.net/o1r265tz/6/embedded/result/
$(document).ready(function(){
$(document).on('click touchstart', '.upload-box', function(e){
e.stopPropagation();
$('.form-upload input.file-input').trigger('click');
$('.debug').append('<p>Clicked!</p>');
console.log('Clicked!');
return false;
});
});
.upload-box {
border: 3px solid #999;
padding: 10px;
text-align: center;
border-radius: 5px;
font-size: 35pt;
font-family: Arial;
color: #555;
}
.form-upload {
display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="upload-box">Click here to upload =D</div>
<form class="form-upload" enctype="multipart/form-data">
<input class="file-input" id="file_input" type="file">
</form>
<div class="debug"></div>
cùng một vấn đề. tôi gỡ bỏ hiển thị không và làm cho con trỏ trỏ đến con trỏ cho tập tin kiểu đầu vào. không có gì xảy ra trong ios :(:( – Mahi