JS——复制文字或图片

/* 	复制文字或图片
	使用:copyInfo({
	   txts: '请复制我',
	   imgs: ['https://profile.csdnimg.cn/D/0/B/2_qq812457115']
	});
 */
export const copyInfo = (sets)=> {
	let imgDiv = document.createElement('div')
	imgDiv.id = '__imgDiv';
	imgDiv.setAttribute('style', 'z-index: -1;position: fixed;')
	let child = '';
	if (sets.txts) {
		if (typeof sets.txts === 'string') {
			child += `<span>${sets.txts}</span>`
		} else {
			sets.txts.forEach(item => {
				child += `<span>${item}</span>`
			});
		}
	}
	if (sets.imgs) {
		if (typeof sets.imgs === 'string') {
			sets.imgs = sets.imgs.indexOf('https') > -1 ? sets.imgs.replace('https', 'http') : sets.imgs;
			child += `<img src="${sets.imgs}" />`
		} else {
			sets.imgs.forEach(item => {
				item = item.indexOf('https') > -1 ? item.replace('https', 'http') : item;
				child += `<img src="${item}" />`
			});
		}
	}
	imgDiv.innerHTML = child;
	document.body.insertBefore(imgDiv, document.body.lastChild)
	let dom = document.getElementById('__imgDiv')
	console.log(dom)
	if (window.getSelection) { //chrome等主流浏览器
		let selection = window.getSelection();
		let range = document.createRange();
		range.selectNodeContents(dom);
		selection.removeAllRanges();
		selection.addRange(range);
	}
	document.execCommand('copy');
	window.getSelection().removeAllRanges();
	imgDiv.parentNode.removeChild(imgDiv);
}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值