ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript画像アップロードプレビューの実装方法(ソースコード添付)

JavaScript画像アップロードプレビューの実装方法(ソースコード添付)

不言
不言転載
2018-10-22 14:10:272154ブラウズ

この記事では、PHP シナジーの実装について詳しく説明します (コード付き)。必要な方は参考にしていただければ幸いです。

皆さん、ゲームが始まりました。ようこそこの説明をご覧ください。今回の内容は画像のアップロードプレビューです。最後にソースコードのリンクを送信します。

早速、写真から始めましょう。

JavaScript画像アップロードプレビューの実装方法(ソースコード添付)

アップロードする画像

青いボックス内をクリックして、PC およびモバイル デバイス上のファイルを選択します。写真を撮るか、アップロードする写真を選択することができます。

HTML 部分

<div>
    <div>
        <div>
            <img  alt="JavaScript画像アップロードプレビューの実装方法(ソースコード添付)" >
            <div>请点击</div>
            <img  alt="JavaScript画像アップロードプレビューの実装方法(ソースコード添付)" >
        </div>
        <div></div>
        <input>
    </div>
</div>

.default-box このレイヤーはプラス記号の画像です
up-img はトランスコード後に画像が表示される場所です。
以下の入力は画像を選択する場所です。

css

        .img-box {
            display: flex;
            justify-content: center;
            align-items: center;
        }
        .card-box {
            width: 7.5rem;
            height: 4rem;
            border: solid .04rem #23a7fe;
            border-radius: 4px;
            box-sizing: border-box;
            position: relative;
        }
        .upImg-btn {
            width: 100%;
            height: 100%;
            opacity: 0;
            position: absolute;
            top: 0;
            left: 0;
        }
        .up-img {
            width: 5.58rem;
            height: 3.12rem;
            margin: .2rem .6rem;
            position: absolute;
            top: .2rem;
            left: 0;
            background-repeat: no-repeat;
            background-position: center center;
            background-size: cover
        }
        .default-box {
            position: absolute;
            top: 0;
            left: 0;
            bottom: 0;
            right: 0;
        }
        .add-img {
            position: absolute;
            top: 50%;
            left: 50%;
            margin-left: -.64rem;
            margin-top: -.64rem;
            width: 1.28rem;
            height: 1.28rem;
        }
        .default-img {
            position: absolute;
            padding: 0 1.1rem;
            bottom: .68rem;
            box-sizing: border-box;
            width: 100%;
            opacity: .5;
        }
        .default-title {
            position: absolute;
            width: 100%;
            bottom: .12rem;
            text-align: center;
            color: #23a7fe;
            font-size: .32rem;
        }

内側は位置決めです。

Page js

    document.querySelector("#addImg").addEventListener("change",function () {
        changeImg({
            id:"addImg",           //input的Id   必须
            imgBox:'upImg',        //显示位置Id   必须
            limitType:['jpg','png','jpeg'],   //支持的类型   必须
            limitSize:819200          //图片超过多大开始进行压缩    可不传
        });
    });

入力の変更時間を監視し、パラメータ dShowImg64.js コードを渡します

     //id,limitType,limitSize
    function changeImg(obj = {}) {                          
        if(!obj.id) return;
        if(!obj.limitType)return;
        var dom = document.querySelector("#"+obj.imgBox);
        var files =  document.querySelector("#"+obj.id).files[0];
        var reader = new FileReader();
        var type = files.type && files.type.split('/')[1];           //文件的类型,判断是否是图片
        var size = files.size;         //文件的大小,判断图片的大小
        if (obj.limitType.indexOf(type) == -1) {
            alert('不符合上传要求');
            return;
        }
        //判断是否传入限制大小。压不压缩。
        var limitSize = obj.limitSize ? parseInt(obj.limitSize) : 0;
        if (size <p>まず、タイプやサイズなどのさまざまな属性を取得します<br>判定 画像が制限サイズより小さいかどうかを確認し、小さい場合は直接base64に変換し、大きい場合はcanvasで縮小し、圧縮を完了してからbase64に変換して設定します。取得した値を背景画像として使用します。次に、追加スタイルを非表示にします。 </p><p style="text-align: center;"><span class="img-wrap"><img src="https://img.php.cn//upload/image/407/191/539/1540188541275097.png" title="1540188541275097.png" alt="JavaScript画像アップロードプレビューの実装方法(ソースコード添付)"></span>#最後のプレビュー画像<br></p>git アドレス:<p>https://github.com/Zhoujiando...<a href="https://github.com/Zhoujiando..."></a><br></p>今後さらに小さなプラグインが追加される予定です。最後に、皆様のご健康を心よりお祈り申し上げます、ありがとうございました。 <p></p><p class="comments-box-content"></p>

以上がJavaScript画像アップロードプレビューの実装方法(ソースコード添付)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はsegmentfault.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。