JavaScriptとHTMLで2つの要素を配列に追加しましたが、クリップボードに新しい要素としてコピーを追加したいのですが、これは複雑なコードのためです。 。 は、ここにあなたがいくつかのエラー1. document.getElementsById( 'copyToClipboard')のinnerHTML = copyToClipboard(要素).copyToClipboardを持っている私のコードJavaScriptで配列に新しい要素を追加する方法
var currImage = 0;
window.onload =() => {
const factsArr = [
\t { image:'https://media.giphy.com/media/3o7aD5tv1ogNBtDhDi/giphy.gif', source:"<a href='http://news.nationalgeographic.com/news/2010/03/100315-half-male-half-female-chickens/' style='text-decoration:none;color:#FFFFFF;' target='_blank'>know more</a>",},
\t { image:'https://media.giphy.com/media/1nkUav308CBws/giphy.gif', source:"<a href='http://www.guinnessworldrecords.com/world-records/most-expensive-pizza' style='text-decoration:none;color:#FFFFFF;'target='_blank'>know more</a>"},
]:
const swtch =() => {
document.getElementsByClassName('image')[0].setAttribute('src', factsArr[currImage].image);
document.getElementsByClassName('source')[0].innerHTML=factsArr[currImage].source;
\t document.getElementById('copyToClipboard').innerHTML=copyToClipboard(element).copyToClipboard
currImage++;
if (currImage == factsArr.length)
currImage = 0;
console.log(currImage);
};
document.getElementsByClassName('generate-btn')[0].addEventListener('click', swtch);
document.getElementsByClassName('source')[0].addEventListener('click', swtch);
}
function copyToClipboard(element) {
var $temp = $("<input>");
$("body").append($temp);
$temp.val($(element).text()).select();
document.execCommand("copy");
$temp.remove();
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button class="generate-btn">Amazing Fact Button</button>
<div class="source"></div>
<img class="image" />
<button onclick="copyToClipboard('element')">Copy Link</button>
です - 要素が定義されていません。 2. document.getElementsById( 'copyToClipboard')。innerHTM - document.getElementById( 'copyToClipboard')である必要があります。innerHTML – Lalit