所有图片都加载完成 再进行网页打印的实现

使用JS打印很简单 

window.print();


这么做的缺点是,如果这个页面图片没加载完成 改方法也会执行

如何做到所有图片都加载完成再打印呢


代码如下

function __Print(){
    var img_length = $("img").length;
    var img_start = 0;
    $('img').each(function(){
        var oneImg = new Image();  
        oneImg.src = $(this).attr('src'); 
        oneImg.onload=function(){
            img_start++;
            console.info(img_start);
            if(img_start == img_length){
                window.print();
            }
            
        };
    })
}

思路就是遍历所有img元素, 对其进行加载完成的处理

当处理的次数和图片的数量相等时 进行打印

如果这个文章帮助到了你 请留言哦!

猜你喜欢

转载自blog.csdn.net/winnershili/article/details/80435327