0Prame gerçekleştiğinde, doSomethingFunc
'u çalıştırmam gerekir. Kodum, geçerli Safari Sürümleri (OSX Safari 10.1 ve iOS 10.3'ten Safari Tarayıcı) dışında tüm tarayıcılarda düzgün çalışıyor. Bu iki tarayıcı için olay dinleyicileri (en azından baskı için) çağrılmıyor gibi görünüyor.Safari window.matchMedia işleyicisi
const mediaQueryPrint = window.matchMedia('print');
mediaQueryPrint.addListener((mql) => {
if (!mql.matches) {
setImmediate(doSomethingFunc);
}
});
window.print();
Yukarıdaki kod OSX Safari 9.1.2 ve iOS 10.2'den Safari ile mükemmel çalışır. Geçerli sürümlerle değil.
Birisi benzer bir şey farketti mi? Ya da mevcut Safari sürümleri için kodumu geliştirmem gerekiyor mu?
Tahmin ettiğim, bu bir Safari hatasıdır, çünkü Safari 10.1 changelog Erişilebilirlik bölümünde buna karşılık gelen bir not bulunmaktadır.
Evet, aynı şeyi deneyimliyorum - Çıktısı (1) durumundaysa, işleyiciyi işten çıkarır. Baskı birden fazla sayfa ise, tamamen yok sayılır. Henüz bir hata raporunu bulamadım. – Rolchau
Evet, sanırım bu özellik çok sık kullanılmıyor. Bugreport.apple.com hakkında bir hata raporu yazmış olsaydım çok memnun olurdum. Ben de aynısını yaptım. Ne yazık ki elma, böcekleri ile çok şeffaftır, bu yüzden elmanın zaten fark edip etmediğini bilmiyoruz. – m4lt3