试图让 jquery.lazyload 用于打印和打印媒体查询。它几乎可以在 Chromium 中使用。但是,它只会显示在“屏幕”上而不是“打印”输出中。不确定这是由于延迟加载的异步性质还是我的误用。
这是我到目前为止所得到的:
$(document).ready(function() {
if (Modernizr.mq('only all')) { // check of mq support
print_mq = window.matchMedia('print')
print_mq.addListener(function(mql) {
if (mql.matches) {
$("img.lazy").trigger('appear'); // load lazy loaded imags before print
}
});
} else {
window.onbeforeprint = function () {
$("img.lazy").trigger('appear');
}
}
});
我是.trigger('appear')
在挖掘源代码后才发现的。它可以在 chromium 的开发工具或 firebug 中运行。但是,在这种情况下运行时,行为似乎有所不同,我不知道为什么。
对于如何使它适用于打印机媒体的任何猜测,我将不胜感激。