Как вызвать событие щелчка ввода в IE

0

Как я могу инициировать событие с одним кликом в IE? Он отлично работает в chrome и FF, но не работает в IE 8,9,10

Мой HTML:

<div class="qq-uploader">
    <div class="qq-upload-button"
        style="position: relative; overflow: hidden; direction: ltr;"
        id="sizcache07400451357324745">
        Click here to upload Image
        <input type="file" multiple="multiple" name="file" style="position: absolute; right: 0px; top: 0px; font-family: Arial; font-size: 450px; margin: 0px; padding: 0px; cursor: pointer; opacity: 0;">
    </div>
</div>

jQuery:

$(".qq-upload-button").each(function(){
   $(this).click(function(e){
     $(this).find('input[type="file"]').trigger('click');
     return false;
   });
}); 
  • 0
    Триггер щелчка при вводе не совместим во всех браузерах ( stackoverflow.com/questions/210643/… ). Я бы предложил заменить .qq-upload-button div на label, чтобы он включал внутренний ввод.
Теги:
internet-explorer

1 ответ

1

Вы не можете открыть диалог загрузки файлов программно для элемента ввода файла во всем браузере. См. Этот ответ для получения дополнительной информации.

Лучше сделать это с помощью принудительного использования, щелкнув элемент управления загрузкой файлов.

Кроме того, вы добавляете обработчик $(".qq-upload-button") В каждом цикле, вы можете добавить обработчики по on методу сразу:

$(".qq-upload-button").on('click', function(e){
    $(this).find('input[type="file"]').trigger('click');
});
  • 0
    Сожалею! это вызывает событие щелчка, но диалоговое окно загрузки файла не открывается. Почему?
  • 0
    написать HTML-код в другом месте попробуйте один раз. если это работает проблема с CSS, то есть еще проблема с JS. я не уверен, что попытка однажды может помочь вам
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню