Javascript ile Panoya (Clipboard) Kopyalama (Firefox, Internet Explorer, Safari)
9 November 2008 SundayMerhaba,
web tabanlı uygulama geliştirirken, bir metnin javascript ile işletim sisteminin hafızasına (panoya) bir metin kopyalamanız gerekebilir. Bu amaçla yazılmış yüzlerce örneğe ulaşabilirsiniz. Ancak bu örneklerin büyük bölümü bazı tarayıcılarda (Firefox gibi) çalışmamaktadır. Örneğin internet explorer’da çalışan aşağıdaki örnek kod, firefox gibi tarayıcılarda çalışmamaktadır.
holdtext.innerText = copytext.innerText;
Copied = holdtext.createTextRange();
Copied.execCommand("Copy");
Bunun mozilla tabanlı tarayıcılarda çalışmamasını, mozilla bu adreste açıklamış. Bu adreste, tüm tarayıcılarda çalışacak bir örnek yer almaktadır. Küçük bir swf dosya ile bu kopyalama sorununu çözebilirsiniz. Aşağıdaki javascript fonksiyonuna kopyalayacağınız metni parametre olarak vermeniz ve fonksiyonu herhangi bir şekilde tetiklemeniz yeterli olacaktır.
function copyIntoClipboard(text) {
var flashId = 'flashId-HKxmj5';
/* clipboard.swf dosyasının bulunduğu adresi düzenleyin*/
var clipboardSWF = 'http://www.akcakaya.info/wp-content/uploads/2008/10/clipboard.swf';
if(!document.getElementById(flashId)) {
var div = document.createElement('div');
div.id = flashId;
document.body.appendChild(div);
}
document.getElementById(flashId).innerHTML = '';
var content = '<embed src="' +
clipboardSWF +
'" FlashVars="clipboard=' + encodeURIComponent(text) +
'" width="0" height="0" type="application/x-shockwave-flash"></embed>';
document.getElementById(flashId).innerHTML = content;
}
Örnekte kullanılan swf dosyası için tıklayınız.
Balkoncu says:
April 26th, 2009 at 23:44
Örnekle açıklarsanız daha iyi olurdu. Bu kodu div içeriği kopyalamakta da kullanabilir miyim?