角度のあるアプリを作成していますが、jQuery を使用する必要があるインスタンスを見つけました。別の非表示のボタンでクリック イベントを発生させるボタンをクリックする必要があります。これは奇妙に思えるかもしれませんが、私が使用している角度モジュール ng-file-upload はスタイル付きアイコンでは機能しないため、この機能が必要です。
私の解決策は、2 つのボタンを作成することでした。1 つは非表示、もう 1 つは透明です。次に、スタイル付きのアイコンを透明なボタンに配置し、他のボタンを非表示にしました。次に、jQuery を使用して、最初のボタンがクリックされたときに 2 番目のボタンがクリックされるようにしました。これは、最新の firefox/chrome では正常に機能しますが、IE8 ではまったく機能しません。
<button id="firstClick" class="fa fa-camera-retro"></button>
<button ng-hide="true" id="secondClick" ng-file-select ng-model="files">Upload</button>
$(document).on('click', '#firstClick', function() {
$('#secondClick').trigger('click');
});
現在、jQuery バージョン 1.10.2 を使用しています。これまたはこれを達成するための代替方法に関するヘルプは大歓迎です。前もって感謝します!
更新: secondClick が起動しているため、この問題は angular-file-select に関係している可能性があると思います。ただし、angular-file-select はそうではありません。また、secondClick を表示に設定し、直接クリックすると ng-file-select が起動します。