gpt4 book ai didi

jquery - 打开新窗口打印元素

转载 作者:行者123 更新时间:2023-12-01 01:16:11 25 4
gpt4 key购买 nike

尝试打开一个新窗口以包含仅用于打印的元素。但在 IE8 中不起作用。

function printElement(elementId) {
var printWindow = window.open('', '_blank',
'status=0,toolbar=0,location=0,menubar=1,resizable=1,scrollbars=1');

printWindow.document.write("<html><head></head><body></body></html>");

var head = jQuery('head').clone();
var printElement = jQuery('#' + elementId).clone();

jQuery(printWindow.document).find('head').replaceWith(head); // does not work in IE8
var body = jQuery(printWindow.document).find('body');
body.empty();
body.append(printElement); // does not work in IE8
return false;
}

感谢您的帮助。

最佳答案

这个怎么样?如果我理解您想要正确执行的操作,这应该对您有用。在 IE 8 中测试。

Working example on JSBin .

HTML:

<a href="#" id="one" class="trigger">Print One</a>
<a href="#" id="two" class="trigger">Print Two</a>

JavaScript:

var $trigger = $(".trigger"),
printElement = function(id) {
var printWindow = window.open('','_blank','status=0,toolbar=0,location=0,menubar=1,resizable=1,scrollbars=1'),
html = $('html').clone(),
printElement = $('#' + id).clone(),
body;

printWindow.document.write("<!DOCTYPE html><head></head><body></body></html>");

$(printWindow.document).find('html')
.replaceWith(html);

body = $(printWindow.document).find('body')
.html(printElement);
};

$trigger.on("click", function(e) {
var id = $(this).attr("id");

e.preventDefault();

printElement(id);
});

关于jquery - 打开新窗口打印元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14804925/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com