如何用图像显示灯箱弹出窗口?

时间:2014-01-24 13:25:15

标签: javascript jquery html lightbox html2canvas

在以下代码中。单击保存按钮后,它要求下载从Html2canvas生成的输出图像。如何查找此代码,以便要求下载它的instaed将使用“lightbox”功能动态生成图像。

我试过:

<html>
    <head>
        <meta charset="utf-8"/>
        <title>test2</title>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.js"></script> 
        <script type="text/javascript" src ="http://code.jquery.com/jquery-1.9.0.min.js"></script>
        <script type="text/javascript" src="html2canvas.js?rev032"></script> 
        <script type="text/javascript">
            $(window).load(function() {
                $('#load').click(function() {
                    html2canvas($('#testdiv'), {
                        onrendered: function (canvas) {
                            var img = canvas.toDataURL("image/png").replace("image/png", "image/octet-stream");
                window.location.href = img;

                        }
                    });

                });
            });
        </script>       
    </head>
    <body>  
        <div id="testdiv">
            <h1>Testing</h1>
            <h4>One column:</h4>
            <table border="1">
            <tr>
                <td>100</td>
            </tr>
            </table>
            <br/>
        </div>
        <input type="button" value="Save" id="load"/>
    </body>
</html>

2 个答案:

答案 0 :(得分:0)

你可以尝试

 $("#containerID").empty().append(canvas); // containerID is the container element for your rendered image

在您的页面上添加图片。并以同样的方式尝试将canvas或img(在您的情况下)作为您的灯箱代码的URL。

答案 1 :(得分:0)

而不是像往常一样将访问者重定向到图像:

window.location.href = img;

您可以向页面添加不可见(display: none)图片:

 <img src="" id="image" style="display: none; position: absolute; top: 30%; left: 30%; z-index: 1000;" />

用你的画布图像数据显示它:

$('#image').attr('src', img).fadeIn(200);

现在这不会创建一个非常有趣的灯箱,没有一些额外的工作,但为此,我建议你使用插件。类似于SlimboxFancybox