Вот несколько способов создать кнопку для печати веб-страницы с определенного адреса:
Вариант 1: Кнопка, которая открывает страницу в новом окне и сразу печатает
<button onclick="printPage('https://example.com/page-to-print')">Напечатать страницу</button>
<script>
function printPage(url) {
const printWindow = window.open(url, '_blank');
printWindow.onload = function() {
printWindow.print();
};
}
</script>Вариант 2: Кнопка для печати текущей страницы
<button onclick="window.print()">Печать этой страницы</button>
Вариант 3: Ссылка для печати с CSS-стилизацией под кнопку
<a href="javascript:window.print()" class="print-button">Печать страницы</a>
<style>
.print-button {
display: inline-block;
padding: 10px 20px;
background-color: #007bff;
color: white;
text-decoration: none;
border-radius: 5px;
cursor: pointer;
}
.print-button:hover {
background-color: #0056b3;
}
</style>Вариант 4: Печать через iframe (если нужно печатать без открытия новой вкладки)
<button onclick="printIframe('https://example.com/page-to-print')">Печать</button>
<script>
function printIframe(url) {
const iframe = document.createElement('iframe');
iframe.style.display = 'none';
iframe.src = url;
document.body.appendChild(iframe);
iframe.onload = function() {
iframe.contentWindow.print();
document.body.removeChild(iframe);
};
}
</script>Примечания:
- Браузерные блокировщики могут запрещать автоматическую печать
- Для кросс-доменных URL могут возникнуть проблемы с политикой CORS
- Лучше добавить обработку ошибок на случай, если страница не загрузится
