Ну а что, в FF click() катит.
Так работает везде
<label style="cursor: pointer">
<input type="file" style="position: absolute; left: -200px; top: -200px;">
<span onclick="if (navigator.userAgent.indexOf('Firefox') != -1) {this.parentNode.children[0].click();}">
link</span>
</label>