js 動態創建a href 循環下載文件只能下載10個或者固定數目的問題


在web前端項目中,很多地方的下載單張圖片/文件都可以用<a href="/images/logo.png" download="文件名">來下載指定文件

遇到的問題:

在下載多個文件的時候 使用for 循環來觸發 a href  download  (此批量下載方法當然不推薦 很lowB 也體驗不好 只是偶爾發現此問題 )

//for循環來觸發a href 下載文件
for(let i=0;i<=100;i++){
   // 獲取要下載的圖片dom
   var img = document.getElementsByClassName('qrcode_canvas')[i]; 
   //獲取地址
   var url = img.src;
   var a = document.createElement('a');
   //模擬點擊
   var event = new MouseEvent('click');   
   a.download="xxxxx.png";
   a.dispatchEvent(event);    
}

1.此方法在mac的電腦上的chrome 上,不論怎么操作,不管是mac筆記本 8GB16GB運行內存的,還是iMac 一體機16GB內存的 都只能下載 10 張(瀏覽器也沒有報任何錯誤的log信息 顯然不是內存問題)

2.而在window 系統上的chrome 上卻沒有發現限制,超過10張是可以正常下載的

 

目前並沒有找到具體問題的原因,只能是在現在單個文件時候 可以通過a href download 來下載,下載多個文件的時候用三方插件(主要用到 jszip 和 file-saver 直接下載多個文件的zip壓縮文件)

npm install jszip --save
npm install file-saver --save

拓展

https://blog.csdn.net/wzp6010625/article/details/100918051

目前此現象只發生在mac OS系統上

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM