我有一种情况,我必须忽略一些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">
<label><b>Test de Conflit</b></label>
<div id="TNeer" style="display:none">
<label for="cnfl1">Test de Neer </label>
<div id="cnfl1"></div>
</div>
<div id="ADouloureux" style="display:none">
<label for="cnfl2">Arc Douleureux </label>
<div id="cnfl2"></div>
</div>
<div id="Yowm" style="display:none">
<label for="cnfl3">Yowm </label>
<div id="cnfl3"></div>
</div>
<div id="THKenedy" style="display:none">
<label for="cnfl4">Test de Howkins-Kenedy </label>
<div id="cnfl4"></div>
</div>
<div id="CATest" style="display:none">
<label for="cnfl5">Cross Abduction Test </label>
<div id="cnfl5"></div>
</div> .
答案 0 :(得分:1)
方法.fromHTML()
不检查您的CSS。我已将.addHtml()
与style="display:none"
一起使用,它对我有用。
请勿使用opacity=0
,因为尽管在浏览器中未显示,但.pdf
将显示div
。
答案 1 :(得分:0)
两种方法,首先是快于第二种方法。
var $visibleDivs = $('div').not(':hidden');
var $visibleDivs = $('div:not(:hidden)');
在您的代码$("div[style*='display:none']")
中,只会选择隐藏的div,这些div由内联样式属性&amp;而不是被css规则隐藏的那些。