Здравствуйте.
Подскажите кто знает по реализации кросбраузерного искусственного события. Нежеследующий код не работает в Firefox. Не работает по причине того, что Firefox (и IE) не выполняют действия "по умолчанию" для искусственных событий типа "click". Хотя в Firefox метод dispatchEvent возвращает true. Как победить эту беду?
<head>
    <meta charset="utf-8" />
    <title>test</title>
  <style type="text/css">
    div { position: absolute; width: 200px; height: 20px; border: 1px solid red; }
    input { visibility: hidden; }
  </style>
</head>
<body>
  <div>
    <input type="file" />
  </div>
  <script type="text/javascript">
    document.getElementsByTagName("div").item(0).onclick = function ()
    {
      if (this.dispatchEvent)
      {
        var e = document.createEvent("MouseEvents");
        e.initMouseEvent("click", false, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
        this.getElementsByTagName("input").item(0).dispatchEvent(e);
      }
    }
  </script>
</body>