Поэтому я использую этот скрипт для копирования текста в буфер обмена, который должен быть как минимум совместим с Firefox и Chrome.
https://github.com/lgarron/clipboard.js
По сути, у меня есть html, который хранится в переменной php, и я пытаюсь скопировать его в буфер обмена. Другой способ, которым я мог бы это сделать, — скопировать содержимое div в буфер обмена, но в основном тот же результат
<script src="js/clipboard.js"></script>
<script>
document.getElementById('markup-copy').addEventListener('click', function() {
var val = '<?php echo $myText ?>';
clipboard.copy({
'text/plain': 'Paste this into a HTML editor.',
'text/html': val;
}).then(
function(){console.log('success'); },
function(err){console.log('failure', err);
});
});
</script>";
Я также попытался сделать то же самое, но повторил строку непосредственно, т.е.
'text/html': '<?php echo $myText ?>';
Скрипт распечатывает фактическую строку HTML, однако, когда я копирую ее в буфер обмена, все, что я вижу, это:
<?php echo $myText ?>
Таким образом, даже если страница переводит вышеприведенное в строку, этот сценарий, кажется, не. Есть идеи?
Переменная $ myText — это строка с некоторым базовым HTML, без php.
Я хочу избегать использования решения на основе флэш-памяти, однако, если это просто не сработает, тогда я не решусь сделать это во флэш-памяти.
замещать
var val = '<?php echo $myText ?>';
в
var val = <?php echo $myText; ?>
замещать
var val = '<?php echo $myText ?>';
с
<?php echo 'var val = "'.$myText.'";'; ?>