扣丁学堂HTML5培训

扣丁学堂HTML5培训简述如何用代码实现HTML截图并保存为本地

2019-02-27  本文已影响4人  994d14631d16

  本篇文章扣丁学堂HTML5培训小编和读者们分享一篇HTML5技术性的文章,那就是如何用代码实现HTML截图并保存为本地图片,本文中会列出详细的代码供小伙伴们参考,代码简单易懂,具有一定的参考借鉴价值,对此感兴趣的小伙伴就随小编一起来看一下吧。

HTML5培训

体代码如下所示:

<!DOCTYPE html>

<html>

    <head>

        <meta charset="UTF-8">

        <title>html2canvas_download</title>

        <style>

            a {

                cursor: pointer;

                color: rgb(85, 26, 139);

                text-decoration: underline;

            }

        </style>

    </head>

    <body>

        <div id="oDiv" style="width: 300px; height: 300px; margin: 10px; background: red; border: 5px solid gray;">

            <h1>hello world!</h1>

        </div>

        <!-- <script type="text/javascript" src="../dist/html2canvas.js"></script> -->

        <script src="https://cdn.bootcss.com/html2canvas/0.5.0-beta4/html2canvas.min.js"></script>

        <script type="text/javascript">

            var oDiv = document.getElementById('oDiv');

            // body截图

            // html2canvas(document.body).then(function(canvas) {

            //    document.body.appendChild(canvas);

            // });

            html2canvas(oDiv).then(function(canvas) {

                document.body.appendChild(canvas);

                var oCavans = document.getElementsByTagName('canvas')[0];

                var strDataURI = oCavans.toDataURL();

                downLoadFn(strDataURI);

            });

            //判断浏览器类型

            function myBrowser() {

                var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串

                var isOpera = userAgent.indexOf("Opera") > -1;

                if(isOpera) {

                    return "Opera"

                }; //判断是否Opera浏览器

                if(userAgent.indexOf("Firefox") > -1) {

                    return "FF";

                } //判断是否Firefox浏览器

                if(userAgent.indexOf("Chrome") > -1) {

                    return "Chrome";

                }

                if(userAgent.indexOf("Safari") > -1) {

                    return "Safari";

                } //判断是否Safari浏览器

                if(userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera) {

                    return "IE";

                }; //判断是否IE浏览器

                if(userAgent.indexOf("Trident") > -1) {

                    return "Edge";

                } //判断是否Edge浏览器

            }

            //IE浏览器图片保存本地

            function SaveAs5(imgURL) {

                var oPop = window.open(imgURL, "", "width=1, height=1, top=5000, left=5000");

                for(; oPop.document.readyState != "complete";) {

                    if(oPop.document.readyState == "complete") break;

                }

                oPop.document.execCommand("SaveAs");

                oPop.close();

            }

            // chrome14+,firefox20+,pera15+,Edge 13+,Safari未实现

            function download(strDataURI) {

                var link = document.createElement('a');

                link.innerHTML = 'download_canvas_image';

                link.download = 'mypainting.png';

                link.addEventListener('click', function(ev) {

                    link.href = strDataURI;

                }, false);

                document.body.appendChild(link);

            };

            function downLoadFn(url) {

                if(myBrowser() === "IE" || myBrowser() === "Edge") {

                    SaveAs5(url);

                } else {

                    download(url);

                }

            }

        </script>

    </body>

</html>

结:

以上所述是小编给大家介绍的使用HTML截图并保存为本地图片的实现代码,希望对大家有所帮助。

  想要了解更多关于HTML5方面内容的小伙伴,请关注扣丁学堂HTML5培训官网、微信等平台,扣丁学堂IT职业在线学习教育平台为您提供权威的HTML5开发视频教程供大家学习,HTML5培训后的前景无限,行业薪资和未来的发展会越来越好的,扣丁学堂老师精心推出的HTML5视频直播课定能让你快速掌握HTML5从入门到精通开发实战技能。

上一篇 下一篇

猜你喜欢

热点阅读