Необходимо стилизовать кнопку выбора файла. В макете не предусматривается поля с именем файла. т.е. мне просто нужно сделать красивую кнопку, клик по которой будет открывать окно выбора файла.
В интеренете полно всяких плагинов и прочей мути. Но почему я не могу скрыть нативный input и сделать элементарный клик по любому html элементу который можно реализовать как кнопкку? например label'у? Я сперва так и попробовал, но работает оно почему то криво: я кликаю по label'у, открывается окно выбора файла, я выбираю, жму "выбрать", окно закрывается и открывается опять снова, выбираю еще раз и только тогда все проходит, т.е. каждый раз вылетает окно 2 раза.
Почему данная конструкция работает криво?
<label for="file-input" id="file-input-label">добавить изображение</label>
<input type="file" id="file-input" accept="image/jpeg,image/png,image/gif">
$("#file-input-label").click(function(){
$("#file-input").click();
})
РЕШЕНИЕ: Разобрался в чем была беда: я кликал по лейблу, который уже был подвязан на инпут. т.е. срабатывал клик через jquery и еще один, нативный через label for="".
Так что можно делать это хоть через jquery, хоть через label for="". И так и так будет работать. Всем большое спасибо.