Chrome’da Javascript Print() fonksiyonu.

By | August 7, 2012

Normal olarak sayfamızdaki belli bir bölümü yazdırmak istediğimizde, bu bölümü “id” veya “class” tag’lerinden yakalayarak yeni bir pencere içerisine yazdırıp bu pencerenin objesinden print() fonksiyonunu çağırarak istediğimiz bölümü yazıcıya gönderebiliyoruz, bunun yanı sıra jquery ile sayfamızdaki html objelerinden birine “printable” sınıfını ekleyerek sadece bu kısmın yazıcıdan çıkması da sağlanabiliyor, tabi gerekli jquery sürümü sayfanızda mevcut ise bunu tercih edebiliyorsunuz.

Chrome ile bu işlemi yaptığınızda sayfa içeriği yüklenmeden önce chrome print() fonksiyonunu işlettiğinden dolayı boş bir sayfa ile karşılaşabilirsiniz. Bu durumun çok kolay bir çözümü var.

var printContent = document.getElementById('dvPrintContent');
var printWindow = window.open('about:blank', 'print');

printWindow.document.write('<body onload="window.print()">');
printWindow.document.write(printContent.innerHTML);
printWindow.document.write('</body>');
printWindow.document.close();
printWindow.focus();

Burada basit javascipt kullanılmış, Chrome tarayıcısında boş sayfa yazdırma sorununu çözüyor, sayfa yüklendiğinde sayfa kendi kendini yazdırmak için girişimde bulunuyor. Aynı işlem jquery ile daha kolay yoldan halledilebilir, mevcut yapıyı ve eski tarayıcıları da düşünerek böyle oluşturuldu.

Leave a Reply

Your email address will not be published. Required fields are marked *