Déclenchez une entrée de fichier pour ouvrir via javascript

J'ai donc une contribution, quelque chose comme ceci:

<input type="file" id="file" /> 

Je souhaite que la boîte de dialogue ouverte du fichier s'affiche via javascript. J'ai essayé des choses comme ça:

 $('file').click(); 

(En supposant que j'utilise quelque chose comme prototype / mootools / jquery). Cependant, cela ne semble rien faire. Est-ce que de toute façon, je peux déclencher l'événement de clic pour l'entrée du fichier sans que l'utilisateur ne soit contraint d'interagir avec l'entrée directement?

Je me rappelle que cela n'est pas possible car il s'agit d'une fonctionnalité de sécurité. En fait, je suis bien sûr que le bouton de la boîte de dialogue de navigation de fichier ne s'affiche même pas dans le DOM (le champ apparaît, mais pas le bouton que le navigateur effectue automatiquement)

 $('file').click() 

Cela fonctionne (dans Chrome 8). Il vous suffit de vous assurer qu'il n'est pas configuré à afficher: aucun;

Une solution facile est de la positionner absolument, puis on la laisse à quelque chose comme -1000px.

Pour autant que je sache, ouvrir le dialogue ouvert du fichier de javascript est bloqué pour des raisons de sécurité.

Les navigateurs IIRC ne permettent pas cela comme un mécanisme de précaution. Un script ne devrait pas pouvoir télécharger automatiquement un fichier d'une certaine manière et le bricolage avec la boîte de dialogue Ouvrir le fichier serait l'un de ces moyens.

Évidemment, cela est mauvais dans certaines situations …