html2canvas无法捕获验证码图像

时间:2015-07-27 18:41:25

标签: jquery html screenshot capture html2canvas

这是html代码:

<div id="divPage">
div_Page
<br/>
<img id="captchaimglogin" src="https://www.emirates.com/account/english/login/login.aspx?cptLogin_captcha=86e2a65e-f170-43b6-9c87-41787ff64a35&t=88d296b19e5e8000&mode=ssl" border="0" />
</div>
<br/>
<input type="button" id="btnSave" value="Save PNG"/>

这是jquery代码:

$(function() {
    $("#btnSave").click(function() { 
        html2canvas($("#divPage"), {
            onrendered: function(canvas) {
                document.body.appendChild(canvas);
               }
         });
         html2canvas($("#btnSave"), {
            onrendered: function(canvas) {
                document.body.appendChild(canvas);
               }
         });
    });
}); 

这是jsFiddle链接

如何使用 html2canvas 或其他方式捕获这些验证码图像?

2 个答案:

答案 0 :(得分:1)

根据HTML2Canvas文档,您可以使用allowTainttaintTest配置来允许跨源图像。

onrendered: function(canvas) {
            document.body.appendChild(canvas);
           },
allowTaint: true,
taintTest: false

答案 1 :(得分:1)

在运行captcha之前检测并删除原始页面上的html2canvas

验证码的许多启示都会有跨域内容,会污染画布。污染画布会自动阻止html2canvas捕获页面......