美文网首页JS 学习笔记网页前端后台技巧(CSS+HTML)
如何调用浏览器的下载功能(兼容各主流浏览器)

如何调用浏览器的下载功能(兼容各主流浏览器)

作者: 壬万er | 来源:发表于2017-09-19 10:29 被阅读610次
    先放一张图
    image.png
    CSS部分
    <html lang="en">
    
        <head>
            <meta charset="UTF-8">
            <title>调用浏览器下载功能(兼容各主流浏览器)</title>
        </head>
        <style>
            img#downImg {
                display: none;
            }
        </style>
    
        <body>
            <div id="down">
                <a id="downLoad">点我下载图片</a>
            </div>
        </body>
    
    </html>
    
    JS部分
    <script>
        //判断浏览器类型 
        function myBrowser(){
            //取得浏览器的userAgent字符串 
            var userAgent = navigator.userAgent; 
            var isOpera = userAgent.indexOf("Opera") > -1;
            //判断是否Opera浏览器 
            if (isOpera) { 
                return "Opera" 
            }; 
            //判断是否Firefox浏览器
            if (userAgent.indexOf("Firefox") > -1) {
                return "FF"; 
            } 
            //判断是否Chrome浏览器
            if (userAgent.indexOf("Chrome") > -1){
                return "Chrome";
            } 
            //判断是否Safari浏览器 
            if (userAgent.indexOf("Safari") > -1) {
                return "Safari"; 
            } 
            //判断是否IE浏览器
            if (userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera) {
                return "IE"; 
            }; 
            //判断是否Edge浏览器
            if (userAgent.indexOf("Trident") > -1) { 
                return "Edge"; 
            } 
        }
        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();
        } 
        function oDownLoad(url) {
            myBrowser();
            
            if (myBrowser()==="IE"||myBrowser()==="Edge"){ 
                //IE 
                ele.href="#";
                
                var oImg=document.createElement("img");
                
                oImg.src=url;
                
                oImg.id="downImg";
                
                var odown=document.getElementById("down");
                
                odown.appendChild(oImg); 
                
                SaveAs5(document.getElementById('downImg').src)
                
            }else{
                    //!IE 
                    ele.href=url; 
                    
                    ele.download="";
            } 
        } 
        var ele=document.getElementById("downLoad"); 
        
        ele.onclick=function () {
            oDownLoad("img/77.jpg")
        }
    </script>
    

    相关文章

      网友评论

      • 青铜杜:您好,出现了问题,在chrome上总是显示“失败网络错误”,不知道是为什么?url有什么需要注意的么?

      本文标题:如何调用浏览器的下载功能(兼容各主流浏览器)

      本文链接:https://www.haomeiwen.com/subject/eicwsxtx.html