【发布时间】:2021-01-09 08:21:44
【问题描述】:
嘿,我是一名新的 Web 开发人员,我正在编写 html、css 和 javascript。我创建了一个“复制”按钮来复制 <p> 元素内的文本,并警告文本已被复制。
buttons.forEach((copystatus) => {
copystatus.addEventListener('click', (e) => {
const copylatest = e.target.closest(".latestatus").querySelector("p").innerText;
const copyText = document.createElement('textarea');
copyText.style.width = "0";
copyText.style.height = "0";
copyText.style.outline = "none";
copyText.style.border = "none";
copyText.value = copylatest;
document.body.appendChild(copyText);
copyText.select();
document.execCommand('copy');
document.body.removeChild(copyText);
copyalert.style.visibility = "visible"
e.target.closest(".latestatus").querySelector("p").appendChild(copyalert);
setTimeout(function() {
copyalert.style.visibility = "hidden"
}, 700);
})
})
.randomStatusCopyAlert {
position: relative;
background-color: #18b495;
color: #ffffff;
padding: 10px 10px;
border-radius: 5px;
z-index: 2;
visibility: hidden;
height: 45px;
float: right;
bottom: 2px;
left: 4%;
}
.randomStatusCopyAlert:before {
content: "";
position: absolute;
height: 10px;
width: 10px;
background-color: #18b495;
left: -5px;
z-index: 1;
transform: rotate(45deg);
top: 39%;
}
<div class="mainStatus">
<h2 class="statusHeading">Latest English Status</h2>
<div class="allStatus">
<div class="block">
<div class="latestatus">
<p>Life is good when you have books</p>
<div class="flex"><button class="copystatus btn">Copy</button> <span class="randomStatusCopyAlert show">Copied!</span></div>
</div>
<div class="latestatus">
<p>Google is a open source library by Larry Page and Sergey Brin!</p>
<div class="flex"><button class="copystatus btn">Copy</button> <span class="randomStatusCopyAlert">Copied!</span></div>
</div>
</div>
<div class="block">
<div class="latestatus">
<p>Cats are better than dogs.</p>
<div class="flex"><button class="copystatus btn">Copy</button> <span class="randomStatusCopyAlert">Copied!</span></div>
</div>
<div class="latestatus">
<p>Ferrets are better than rats</p>
<div class="flex"><button class="copystatus btn">Copy</button> <span class="randomStatusCopyAlert">Copied!</span></div>
</div>
</div>
</div>
</div>
我的主要目的是在单击相应的<button class="copystatus btn">Copy</button> 时使相应的 <span class="randomStatusCopyAlert">Copied!</span> 可见。虽然代码工作正常,但 javascript 会自行创建并显示它。
看我会分享一些照片,这样如果我让“.randomStatusCopyAlert”自己可见。
[![看到现在跨度放置正确][1]][1]
现在跨度已正确放置。 当它由上面的javascript完成时 [![span改变位置进入
使用 html 代码检查工具时的元素][2]][2]
跨度位置已更改。 [1]:https://i.stack.imgur.com/aNevS.png [2]:https://i.stack.imgur.com/b0az4.png
【问题讨论】:
-
copyalert变量在哪里初始化?
标签: javascript html css dynamic-programming dynamic-html