HTML
<input id="videoInput" type="file" style="display: none" />
<button type="submit" id="videoUploadInput">上传文件</button>
JS
$('#videoUploadInput').click(function (e) {
e.preventDefault()
setTimeout(function() {
document.getElementById('videoInput').click()
}, 2000)
})
La raison du positionnement initial est que l'événement click est déclenché par la fonction de rappel. À l'heure actuelle, event.isTrusted est faux (cet attribut n'est actuellement pris en charge que par IE et Firefox), plutôt que d'être activement déclenché par l'utilisateur, c'est-à-dire , cet événement n'est pas déclenché par la confiance du navigateur.
http://stackoverflow.com/ques...
http://stackoverflow.com/ques...
1. Changez le retardé de 2000 à 1000
Description du lien
2. Les fonctions de traitement différé sont exécutées immédiatement
setTimeout((function(){})(),2000)