Как изменить текст при копировании в буфер обмена с помощью ZeroClipboard?
Я пытаюсь использовать http://zeroclipboard.org/. Этот пример копирует содержимое div в буфер обмена по нажатию кнопки.
<html>
<head>
<script type="text/javascript" src="bower_components/zeroclipboard/dist/ZeroClipboard.min.js"></script>
</head>
<body>
<input id="textholder" value="some text" />
<button id="button1" data-clipboard-target="textholder">Copy from div to Clipboard</button>
<script>
var zeroClipboard = new ZeroClipboard();
zeroClipboard.clip(document.querySelector("#button1"));
</script>
</body>
</html>
Как изменить скопированный текст, чтобы получить, например, "некоторый текст [скопированный]" вместо просто "некоторый текст" при вставке?
1 ответ
Решение
Вы можете использовать функцию setText() на вашем нулевом буфере обмена вместо того, чтобы просто нажать кнопку. Таким образом, вы можете создать переменную, в которой вы получите текст, хранящийся в вашем текстовом поле, а затем измените его. Это было бы что-то вроде:
<html>
<head>
<script type="text/javascript" src="bower_components/zeroclipboard/dist/ZeroClipboard.min.js"></script>
</head>
<body>
<input id="textholder" value="some text" />
<button id="button1" data-clipboard-target="textholder">Copy from div to Clipboard</button>
<script>
var zeroClipboard = new ZeroClipboard();
var text = //select your textfield and add modifications to the text
zeroClipboard.setText(text);
zeroClipboard.clip(document.querySelector("#button1"));
</script>
</body>
</html>
Надеюсь, это поможет =)