Я пытаюсь создать функцию javascript, в которой содержимое отключается до инициализации window.print
, а затем переключает содержимое обратно после отправки страницы на принтер. Я пытался использовать document.body.onfocus
, но некоторые методы печати (например, печать в PDF) возвращают фокус на body
до того, как страница будет фактически напечатана, таким образом заменяя предполагаемый контент оригинальным контентом.
Вот то, что у меня есть на данный момент, и где слушатель, я думаю, мне понадобится:
function printNewContent() {
var title = document.getElementById("OriginalTitle");
var secondtext = document.getElementById("TextBlock2");
var copy = document.getElementById("StandardCopy");
var origtitle = title.innerHTML;
var origcopy = copy.innerHTML;
var newcopy = document.getElementById("NewCopy").innerHTML;
title.innerHTML = "New Title";
copy.innerHTML = newcopy;
secondtext.className = "displayNone";
window.print();
//Listen for page to be sent to the printer
title.innerHTML = origtitle;
copy.innerHTML = origcopy;
secondtext.className = "PrintOnly SecondTxt";
}
Я бы использовал задержки в сочетании с подходом onfocus
, но это не надежный метод, и я ищу что-то настолько стабильное и последовательное, насколько это возможно. Любые предложения будут ценны. Спасибо!