Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用HTML2Canvas为jQuery元素截图?_Javascript_Jquery_Html_Html2canvas - Fatal编程技术网

Javascript 如何使用HTML2Canvas为jQuery元素截图?

Javascript 如何使用HTML2Canvas为jQuery元素截图?,javascript,jquery,html,html2canvas,Javascript,Jquery,Html,Html2canvas,我想使用HTML2Canvas获取jQuery可选列表的屏幕截图(base64表示)。但是,它似乎无法解释jQuery元素 这就是我截图的方式 html2canvas(document.getElementById("target"), { onrendered: function (canvas) { var dataURL = canvas.toDataURL(); console.log(dataURL);

我想使用HTML2Canvas获取jQuery可选列表的屏幕截图(base64表示)。但是,它似乎无法解释jQuery元素

这就是我截图的方式

    html2canvas(document.getElementById("target"), {
        onrendered: function (canvas) {
            var dataURL = canvas.toDataURL();
            console.log(dataURL);
        }
    });
它适用于拍摄常规HTML元素的屏幕截图,因此我不确定现在该做什么


出于某种原因,
目标
div需要一些文本,因此,我在其中放置了一个空格

更新:看看@karchigh的答案

var fin=document.getElementById(“finalize”);
var createCanv=函数(e){
html2canvas(document.getElementById(“目标”){
onrendered:函数(画布){
var dataURL=canvas.toDataURL();
log(dataURL);
}
});
}
fin.addEventListener('click',createCanv)
//这是测试版本
var testButton=document.getElementById(“测试”);
var testcreateCanv=函数(e){
html2canvas($(#target'){
onrendered:函数(画布){
var dataURL=canvas.toDataURL();
$('img').attr('src',dataURL);
}
});
}
testButton.addEventListener('click',testcreateCanv);
var tableCount=0;
风险值计数=0;
$(函数(){
$(“#可选”)。可选({
停止:函数(){
$(“.ui已选定”)。可选({
残疾人士:对
});
$(.ui selected”).selectable(“选项”,“禁用”,true);
tableCount+=1;
var-len=0;
var result=$(“#选择结果”).empty();
$(“.ui已选定”,此).each(函数(){
var指数=$(“#可选li”)。指数(本);
结果。追加(“#”+(索引+1));
len+=1;
});
$(“.ui选定”).css(“背景色”、“红色”);
$(“.ui selected”).html(tableCount);
变量日志=$(“#选择日志”);
$(“.ui已选定”,此).each(函数(){
var指数=$(“#可选li”)。指数(本);
log.append(“+len+”中的“添加表”+tableCount+”,由座位“+(索引+1)+”和“+customcount+”人“+”
”)组成; 返回false; }); } }); }); $(文档).ready(函数(){ $(“:enabled”).css(“边框”,“3px纯绿色”); $(“.ui已选定”)。可选({ 残疾人士:对 }); $(.ui selected”).selectable(“选项”,“禁用”,true); });
#反馈{
字号:1.4em;
}
#可选择的。用户界面被选择者{
背景:#0000ff;
颜色:#7FFF00;
}
#可选。用户界面选择{
背景:#000000;
颜色:白色;
}
#可选择。用户界面已选择{
背景:#ff0000;
颜色:白色;
}
#可选的{
列表样式类型:无;
保证金:10;
填充:10;
宽度:900px;
}
#可选锂{
保证金:3倍;
填充:1px;
浮动:左;
宽度:100px;
高度:80px;
字号:4em;
文本对齐:居中;
}
#目标{
最小高度:300px;
}


  • 定稿
    测试截图 试验 伊姆盖奇
    出于某种原因,
    目标
    div需要一些文本,因此,我在其中放置了一个空格

    更新:看看@karchigh的答案

    var fin=document.getElementById(“finalize”);
    var createCanv=函数(e){
    html2canvas(document.getElementById(“目标”){
    onrendered:函数(画布){
    var dataURL=canvas.toDataURL();
    log(dataURL);
    }
    });
    }
    fin.addEventListener('click',createCanv)
    //这是测试版本
    var testButton=document.getElementById(“测试”);
    var testcreateCanv=函数(e){
    html2canvas($(#target'){
    onrendered:函数(画布){
    var dataURL=canvas.toDataURL();
    $('img').attr('src',dataURL);
    }
    });
    }
    testButton.addEventListener('click',testcreateCanv);
    var tableCount=0;
    风险值计数=0;
    $(函数(){
    $(“#可选”)。可选({
    停止:函数(){
    $(“.ui已选定”)。可选({
    残疾人士:对
    });
    $(.ui selected”).selectable(“选项”,“禁用”,true);
    tableCount+=1;
    var-len=0;
    var result=$(“#选择结果”).empty();
    $(“.ui已选定”,此).each(函数(){
    var指数=$(“#可选li”)。指数(本);
    结果。追加(“#”+(索引+1));
    len+=1;
    });
    $(“.ui选定”).css(“背景色”、“红色”);
    $(“.ui selected”).html(tableCount);
    变量日志=$(“#选择日志”);
    $(“.ui已选定”,此).each(函数(){
    var指数=$(“#可选li”)。指数(本);
    log.append(“+len+”中的“添加表”+tableCount+”,由座位“+(索引+1)+”和“+customcount+”人“+”
    ”)组成; 返回false; });
    #target {
          min-height:300px;
    }
    
       #selectable:after{
         content: "";
          display: block; 
          clear: both;
       }