@vlad7576

Как воспользоваться zeroclipboard?

мне надо сделать так чтобы при нажатии на кнопку ButtonCopy, текст из source копировался.
я пытался сделать это через innerhtml, но почему-то это не работает.

<head><script type="text/javascript" src="ZeroClipboard.js"></script></head>
<body>
<div class="main-body">
        <div class="result">
            <div id="source">рандомный текст</div>
        </div>
<button id="ButtonCopy"></button>
<script type="text/javascript">
    var clip = new ZeroClipboard.Client();
  var CopyText=Document.getElementById("source").innerHTML;
  clip.setText( CopyText);
    clip.glue('ButtonCopy');
</script>
</body>
  • Вопрос задан
  • 3128 просмотров
Пригласить эксперта
Ответы на вопрос 1
AlekseyNemiro
@AlekseyNemiro
full-stack developer
Довольно капризная штука. Сколько раз сталкивался, постоянно какие-то проблемы.

<div class="main-body">
	<div class="result">
		<div id="source">Скопируй меня, если не боишься!</div>
	</div>
	<button id="ButtonCopy">Копировать</button>
</div>

<script src="ZeroClipboard.min.js" type="text/javascript"></script>


<script type="text/javascript">
	var CopyText = document.getElementById('source').innerHTML;
	var clip = new ZeroClipboard(document.getElementById('ButtonCopy'), { moviePath: 'ZeroClipboard.swf' });

	clip.on('mousedown', function (client) {
		client.setText(CopyText);
	});

	clip.on('complete', function (client, args) {
		alert('Текст: "' + args.text + '" успешно помещен в буфер обмана!');
	});

	clip.on('noflash', function (client) {
		alert("А <s>компот</s> Flash?");
	});
</script>


Если просто в браузере открыть, может не сработать. Нужно с localhost или с сайта смотреть.

Вот пример, у меня работает.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы