Регистрация Войти
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Поиск по сайту
Доступ к 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
.
Прокомментировать/Отблагодарить