safari浏览器Date和Blob的兼容性问题

safari 的new Date()参数不支持yyyy-MM-dd格式,只支持yyyy/MM/dd,别的浏览器不存在这样的问题。
解决办法:可以先用正则替换一下.replace(/-/g,'/'),如果跟日期选择器的格式匹配不上可以用moment包裹一下,再用formart()格式化一下最终得到yyyy-MM-dd的格式

最近在做一个功能,canvas.toBlob()低版本safari不存在。
解决办法:

  if (!HTMLCanvasElement.prototype.toBlob) {
    Object.defineProperty(HTMLCanvasElement.prototype, 'toBlob', {
       value: function (callback, type, quality) {
          var binStr = atob(this.toDataURL(type, quality).split(',')[1]),
          en = binStr.length,
          arr = new Uint8Array(len);
           for (var i = 0; i < len; i++) {
               arr[i] = binStr.charCodeAt(i);
           }
          callback(new Blob([arr], { type: type || 'image/png' }));
           }
        })
   }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容