如何使用JSPDF忽略div哪个style = none

时间:2015-06-27 18:54:32

标签: javascript html jquery-mobile jspdf

我有一种情况,我必须忽略一些div,我正在使用JSPDF插件, 想法是只获得一些div(这是用户选择的结果),JSPDF得到代码frome html,所以它甚至得到隐藏的div。

这是我的代码,但它不起作用,任何帮助都将受到赞赏,

var doc = new jsPDF();

var specialElementHandlers = {

    '#editor': function (element, renderer) {

        return true;
    }

};


     $("div[style*='display:none']").remove();

    doc.fromHTML($('#resultat').html(),15, 15,{
        'width': 170,
            'elementHandlers': specialElementHandlers
    });




    doc.output("dataurlnewwindow");


<div id="resultatConflit" style="display:none">
                    &lt;label><b>Test de Conflit</b>&lt;/label>
                    <div id="TNeer" style="display:none">
                        &lt;label for="cnfl1">Test de Neer &lt;/label>
                        <div id="cnfl1"></div>
                    </div>
                    <div id="ADouloureux" style="display:none">
                        &lt;label for="cnfl2">Arc Douleureux &lt;/label>
                        <div id="cnfl2"></div>
                    </div>
                    <div id="Yowm" style="display:none">
                        &lt;label for="cnfl3">Yowm &lt;/label>
                        <div id="cnfl3"></div>
                    </div>
                    <div id="THKenedy" style="display:none">
                        &lt;label for="cnfl4">Test de Howkins-Kenedy &lt;/label>
                        <div id="cnfl4"></div>
                    </div>
                    <div id="CATest" style="display:none">
                        &lt;label for="cnfl5">Cross Abduction Test &lt;/label>
                        <div id="cnfl5"></div>
                    </div> .

2 个答案:

答案 0 :(得分:1)

方法.fromHTML()不检查您的CSS。我已将.addHtml()style="display:none"一起使用,它对我有用。

请勿使用opacity=0,因为尽管在浏览器中未显示,但.pdf将显示div

答案 1 :(得分:0)

两种方法,首先是快于第二种方法。

  1. var $visibleDivs = $('div').not(':hidden');
  2. var $visibleDivs = $('div:not(:hidden)');
  3. 在您的代码$("div[style*='display:none']")中,只会选择隐藏的div,这些div由内联样式属性&amp;而不是被css规则隐藏的那些。