DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> 單擊按鈕復制定義好的內容到剪貼板
單擊按鈕復制定義好的內容到剪貼板
編輯:關於JavaScript     

我們通常會通過單擊按鈕的操作,將定義好的內容直接復制到剪貼板

對於用戶來說點了按鈕直接【Ctrl】+【V】就可以了。

其實該功能的核心原理就是用到了window子對象clipboardData的一個方法:setData()

其語法是:clipboardData.setData(sDataFormat, sData)

參數sDataFormat表示要復制的內容的格式;參數sData則要復制的內容。
返回值:復制成功返回true;失敗返回false。

比如:

clipboardData.setData("text","www.poluoluo.com")
<a href="#" onclick=javascript:clipboardData.setData("text","www.poluoluo.com")>
單擊當前鏈接文本表示復制了內容到本地剪貼板,只需在【Ctrl】+【V】就能顯示出定義的內容
</a>

以上是定義了固定的值復制到本地剪貼板,可用在諸如“將本頁轉閱給朋友”類似的功能需求中,以達到快捷轉達網址或信息的目的。

此外,我們還會遇到這樣的一些情況:當我們在某網站復制了一段內容之後,在粘貼下來時,發現不自覺的多了一行信息,該信息即是由內容復制到剪貼板同時增加的一行信息。

也就是說我們寫入到剪貼板中的值除了拷貝的選擇內容外,還有自己定義的值,那麼如何獲得“拷貝的選擇內容”,這就需要使用到 document.selection.createRange() 方法,其中該方法配合 execCommand,在 HTML 編輯器中很有用,比如:文字加粗、斜體、復制、粘貼、創建超鏈接等。

<textarea cols=40 rows=10>
www.poluoluo.com 網頁教學網
www.tangshanseo.cn 唐山SEO
www.xiaoduzi.com 健康減肥網
</textarea> <br>
<input type=button value="先選擇文本框文本再單擊本按鈕" onclick=alert(document.selection.createRange().text)>
</form>

所以,應用了document.selection.createRange().text就能重新定義剪貼板中的值了。

選擇復制本段文本,然後粘貼到文本編輯器中查看是不是多了一些附加信息。

<script type="text/javascript">
document.body.oncopy=function(){
 event.returnValue=false;
 var t=document.selection.createRange().text;
 var s="有關單擊按鈕將內容復制到剪貼板的原文內容地址: "+location.href;
 clipboardData.setData('Text',t+'\r\n\r\n'+s+'\r\n');
}
</script>

需要注意的是,該腳本執行要位於頁面最低部。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved