Страницы

Поиск по вопросам

суббота, 8 февраля 2020 г.

Печать javascript

#javascript #веб_программирование #печать


Пишу небольшую программу, которая в конце должна отправлять кое-какие данные в печать.
Так вот я печать сделала на JavaScript.

function printit(divName){ 
  var printContents = document.getElementById(divName).innerHTML;
  var originalContents = document.body.innerHTML;

  document.body.innerHTML = printContents;

  window.print();

  document.body.innerHTML = originalContents;
}


Когда нажимаю на печать, выходит окно браузера для настроек печати. Хотелось бы обойтись
без этого окна и предварительного просмотра страницы. Просто лишние кнопки еще нажимать,
а у меня и так уже стоит кнопка печать, а потом еще одна, и для пользователей будет
неудобно. Как бы избавиться от этого окна настроек? Помогите. :)
    


Ответы

Ответ 1



Для пользователя будет неудобно, если он не сможет настроить параметры печати. Вдруг он хочет печатать на двух сторонах листа, или несколько страниц на одном листе, или он захочет изменить масштаб страницы перед печатью? Или вдруг вы спамер и желаете забросать пользователя кучей рекламы, распечатанной без его согласия? Именно поэтому браузеры не позволяют JavaScript'у принудительно начать печать без явного подтверждения пользователя. Всё, что вы можете сделать в данной ситуации - просто забить.

Ответ 2



Данная функциональность реализована на уровне браузера, и ее нельзя отключить. Так что от этого окна print preview Вы никак не избавитесь, увы.

Ответ 3



Есть решение, для Google Chrome нужно в ярлыке поставить ключ --kiosk-printing. После этого браузер будет печатать сразу без дополнительных настроек и выбора принтера.

Комментариев нет:

Отправить комментарий