javascript - 如何在 Jquery 中预览图像?

标签 javascript jquery image preview

我有一些 html 元素:

<img id="preview_image" alt="" src="" width="100px" height="120px"> 

<br>


<input type="file" name="user_image" id="user_image" onchange="preview(this);">

这里是js:

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

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

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

当我选择一张图片时,它会立即预览。

我现在想要的是:首先,选择一个图像(但现在不是预览),然后单击超链接,将显示该图像。超链接是这样的:

<a href="javascript:void(0)" onclick="preview2()">Click to preview</a>


preview2 = function(){
    //what should I do here (using Jquery)
}

非常感谢!

最佳答案

首先,使用onclick 是非常糟糕的做法。相反,使用 jQuery 的事件绑定(bind)。无论哪种方式,这段代码都可以解决问题:

<a id="previewButton">Click here to preview</a> <!-- initially, the button is disabled -->

<script type="text/javascript">
function preview (input)
{
    $("#previewButton").hide (); // don't show preview until file loaded
    // implementation code

    reader.onload = function (e) {
        $("#previewButton").show () // show the button
                           .click (function() {
            $("#preview_image").attr () // your old loader code
        }
    }
}

关于javascript - 如何在 Jquery 中预览图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7469504/

相关文章:

java - 将图像加载到程序(与 jar 一起使用)

java - 调整服务器上图像的大小以适应各种设备

javascript - 两个单词之间有空格

javascript - JQuery - 设置 css 和实际宽度/高度宽度一个函数

jquery - 当页面滚动时如何使用 id 更改菜单的事件类别

javascript - 使用 on() 触发表单提交

javascript - getelementbyid 不工作

javascript - 启用字段并允许使用 keyup 值进行编辑

javascript - 在图像上传时使用angularjs获取尺寸(宽度和高度)验证

javascript - 即使事件处理程序也以父元素为目标,也仅以子元素为目标