Регистрация Войти
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Поиск по сайту
Наш чат в Telegram для обмена идеями, проектами, мыслями, людьми в сфере ИТ г.Ростова-на-Дону: @it_rostov
Доступ к clipboard (буферу обмена)
Этот пример демонстрирует доступ к буферу обмена.
Исходный код этого примера:
<style>
textarea {
width: 100%;
max-width: 550px;
height: 200px;
}
</style>
<script>
function copy_clip(meintext)
{
if (window.clipboardData)
{
// для IE
window.clipboardData.setData("Text", meintext);
}
else if (window.netscape)
{
try {
if (netscape.security.PrivilegeManager.enablePrivilege)
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
// netscape.security.PrivilegeManager.enablePrivilege('UniversalBrowserRead');
// netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserWrite")
} catch (e) {alert('Настройка безопасности браузера не позволяет обращаться к буферу обмена!\n'+e); return;}
var clip = Components.classes['@mozilla.org/widget/clipboard;1']
.createInstance(Components.interfaces.nsIClipboard);
//alert(clip);
if (!clip) return;
var trans = Components.classes['@mozilla.org/widget/transferable;1']
.createInstance(Components.interfaces.nsITransferable);
if (!trans) return;
trans.addDataFlavor('text/unicode');
var str = new Object();
var len = new Object();
var str = Components.classes["@mozilla.org/supports-string;1"]
.createInstance(Components.interfaces.nsISupportsString);
var copytext=meintext;
str.data=copytext;
trans.setTransferData("text/unicode",str,copytext.length*2);
var clipid=Components.interfaces.nsIClipboard;
if (!clip) return false;
clip.setData(trans,null,clipid.kGlobalClipboard);
}
alert("В буфер обмена сохранено:\n\n" + meintext);
return false;
}
</script>
<form name="main" method="post">
<textarea name="code">
Напишите здесь любой тескст, который будет
сохранен в ClipBoard.
После этого нажмите кнопку "Скопировать в буфер обмена".
</textarea>
</form>
<br>
<form onsubmit="return false;">
<p>
<input type="submit" value="Скопировать в буфер обмена" onclick="copy_clip(document.forms.main.elements.code.value);">
</p>
</form>
Еще один вариант копирования в буфер обмена. Работает только в IE
function copy2Clipboard(oCodeSpan)
{
var textRange = document.body.createTextRange();
textRange.moveToElementText(oCodeSpan);
textRange.execCommand("Copy");
}
Описание сервиса Clipboard: www.mozilla.org/xpfe/xptoolkit/clipboard.html
.
Прокомментировать/Отблагодарить