点击按钮 把canvas下载为图片,我写的代码导致下载后页面刷新,如何解决?

elink.target = '_blank'设置了也不行

function download() {
        // const url = canvas.toDataURL()
        // const blob = dataURLtoBlob(url)
        // a标签下载
        const dataURL = canvas.toDataURL({
            width: canvas.width,
            height: canvas.height,
            left: 0,
            top: 0,
            format: 'png',
        });
        const elink = document.createElement('a')
        elink.download = '截图.png'
        elink.style.display = 'none'
        // elink.href = URL.createObjectURL(blob)
        elink.href = dataURL
        document.body.appendChild(elink)
        elink.click()
        document.body.removeChild(elink)
    }

问题已经解决 是因为bootstrap

        <form class="d-flex" role="search">
            <button class="btn btn-success" onclick="download()">
                <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor"
                     class="bi bi-download" viewBox="0 0 16 16">
                    <path d="M.5 9.9a.5.5 0 0 1 .5.5v2.5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2.5a.5.5 0 0 1 1 0v2.5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-2.5a.5.5 0 0 1 .5-.5z"/>
                    <path d="M7.646 11.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 10.293V1.5a.5.5 0 0 0-1 0v8.793L5.354 8.146a.5.5 0 1 0-.708.708l3 3z"/>
                </svg>
                EXPORT
            </button>
        </form>
阅读 1.5k
1 个回答
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题