0

送信をクリックする前に、アップロードしようとしている画像を表示する JavaScript 関数があります。ファイルを選択すると、ページに画像が表示されるだけです。これは、IE 以外のすべてのブラウザーで機能します。これは非常に単純な JavaScript 関数です。これが IE でレンダリングされない理由はありますか? ありがとうございました。

ページの先頭にある Javascript は次のとおりです。

    function readURL(input) {
        if (input.files && input.files[0]) {
            var reader = new FileReader();

            reader.onload = function (e) {
                $('#blah')
                    .attr('src', e.target.result)
                    .width(75)
                    .height(75);
            };

            reader.readAsDataURL(input.files[0]);
        }
    }

これは空の画像の HTML です。ファイルを選択すると、img id="blah" に表示されます。これは、IE を除くすべてのブラウザーで適切にレンダリングされます。

<div id="question_submit_outside_holder">
    <input type="submit" name="question_reply_upload_image" id="questions_place_inline_image_form_submit_one" value="Place image" />
</div>

<div id="questions_form_image_upload_image_holder">
    <img id="blah" src="" /> <!-- img should be displayed here -->
</div>

アップデート

これは、投稿に画像を追加する方法です。IEを除くすべてのブラウザで表示されます

<script type="text/javascript">
    image = '<img src="http://forum.site.com/.../<?php echo $_SESSION['user_id']; ?>/question_reply_images/<?php echo $image_name; ?>" alt="<?php echo $alt; ?>" />';
    document.getElementById('editor1').innerHTML += image;
    window.location = '#reply_textbox';
</script>
4

1 に答える 1

2

もちろんIEでは動きません!IE9 以下は、投稿したコードでサムネイル プレビューを有効にする FileReader API をサポートしていません。

朗報: IE10 は FileReader API をサポートしています。 http://caniuse.com/filereader

于 2012-04-06T19:16:33.170 に答える