忍者ブログ

ひつ(じのひよこが)プログラミングします。
お仕事や趣味で困ったこととか、何度も「あれ?どうだったかしら」と調べたりしたこととか、作ったものとか、こどものこととかを書きます
★前は週末定期更新でしたが今は不定期更新です

2024/05    04« 1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  »06

ドラッグ・ドロップでファイル処理する(jQuery)

dragover とかないとちゃんと動かないのは注意な。

// encoding.js を読み込んでいる前提
// リポジトリ:https://github.com/polygonplanet/encoding.js
    const body = $('body');
    body.on('dragleave', (e) => {
        body.css('background-color', '');
        e.preventDefault();
    });
    body.on('dragover', (e) => {
        body.css('background-color', 'lightyellow');
        e.preventDefault();
    });

    body.on('drop', (e) => {
        e.preventDefault();
        e.stopPropagation();
        fileReader.onload = (e) => {
            const codes = new Uint8Array(fileReader.result);
            const rawString = Encoding.convert(codes, {
                to: 'unicode',
                from: Encoding.detect(codes),
                type: 'string'
            });
            console.log(rawString);
        };
    	fileReader.readAsArrayBuffer(e.originalEvent.dataTransfer.files[0]);
        body.css('background-color', '');
    });
PR

コメント

ただいまコメントを受けつけておりません。

ブログ内検索

P R