Jquery跨瀏覽器文本復制插件Zero Clipboard的使用方法
當開發(fā)者需要對某局部文本進行點擊復制效果時,在IE下實現(xiàn)比較簡單。但要想做到跨瀏覽器比較困難了。Zero Clipboard 它利用 Flash 進行復制,所以只要瀏覽器裝有 Flash 就可以運行,而且比IE的document.execCommand(“Copy”) 更加靈活。
Zero Clipboard 的實現(xiàn)原理
Zero Clipboard 利用 Flash 進行復制,之前有 Clipboard Copy 解決方案,其利用的是一個隱藏的 Flash。但最新的 Flash Player 10 只允許在 Flash 上進行操作才能啟動剪貼板。所以 Zero Clipboard 對此進行了改進,用了一個透明的 Flash ,讓其漂浮在按鈕之上,這樣其實點擊的不是按鈕而是 Flash ,也就可以使用 Flash 的復制功能了。
Zero Clipboard 特點介紹:
兼容支持Flash 10
避免使用第三方瀏覽器插件(的Adobe Flash瀏覽器中的安全沖突)
無形的覆蓋,無干擾,頁面設計
支持CSS“懸停”和“活躍”狀態(tài)
保留目標元素的“點擊”,”mouseenter”和”mouseleave”的事件
供應回調(diào)函數(shù)“復制前”和“復制”
極輕的重量! (7KB精縮)
首先下載 Zero Clipboard ,并解壓縮。其中需要兩個文件:ZeroClipboard.js 和 ZeroClipboard.swf ,將這兩個文件放入到你的項目中。
點擊下載:jquery.zclip.1.1.1
用法:
1.) 首先引入核心文件
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.zclip.js"></script>
2.) 在頁面代碼里寫入功能模塊,定義copy復制按鈕元素屬性信息
<script language="javascript">
$(document).ready(function(){
$('a#copy-description').zclip({
path:'js/ZeroClipboard.swf',
copy:$('p#description').text()
});
// The link with ID "copy-description" will copy
// the text of the paragraph with ID "description"
$('a#copy-dynamic').zclip({
path:'js/ZeroClipboard.swf',
copy:function(){return $('input#dynamic').val();}
});
// The link with ID "copy-dynamic" will copy the current value
// of a dynamically changing input with the ID "dynamic"
});
</script>
例一:
<a href="#" id="copy-description">點擊復制效果預覽</a>
<p id="description">文本源……</p>
例二:
<a href="#" id="copy-dynamic">點擊復制效果預覽:</a><input style="width:300px; margin-left:15px;" type="text" id="dynamic" value="Insert any text here." onfocus="if(this.value=='Insert any text here.'){this.value=''}" onblur="if(this.value==''){this.value='Insert any text here.'}" />
3.) 供應定制的回調(diào)函數(shù)。
<script language="javascript">
$(document).ready(function(){
$("a#copy-callbacks").zclip({
path:'js/ZeroClipboard.swf',
copy:$('#callback-paragraph').text(),
beforeCopy:function(){
$('#callback-paragraph').css('background','yellow');
$(this).css('color','orange');
},
afterCopy:function(){
$('#callback-paragraph').css('background','green');
$(this).css('color','purple');
$(this).next('.check').show();
}
});
});
</script>
3.) 默認參數(shù)。
擴展介紹:
1.) 測試兼容IE6,IE7,IE8,F(xiàn)F 3.6,Chrome瀏覽器8,Safari 5的,歌劇11
2.) 適當?shù)腃SS特效:
/* zClip is a flash overlay, so it must provide */
/* the target element with "hover" and "active" classes */
/* to simulate native :hover and :active states. */
/* Be sure to write your CSS as follows for best results: */
/*大概意思就是說 ZeroClip是flash疊加……就是說flash疊加在了text文本上,其實顯示文字可以根據(jù)css來定義*/
a:hover, a.hover {...}
a:active, a.active {...}
在線演示:
1、http://demo.jb51.net/js/2016/jquery_zclip/demo1.html
2、http://demo.jb51.net/js/2016/jquery_zclip/demo2.html
至此,該插件使用方法已經(jīng)介紹結束,對于使用者的開發(fā)者來說,剩下的擴展方面就要根據(jù)需求而定了。
- ZeroClipboard插件實現(xiàn)多瀏覽器復制功能(支持firefox、chrome、ie6)
- 使用ZeroClipboard解決跨瀏覽器復制到剪貼板的問題
- zeroclipboard 單個復制按鈕和多個復制按鈕的實現(xiàn)方法
- JavaScript flash復制庫類 Zero Clipboard
- zeroclipboard復制到剪切板的flash
- Zero Clipboard js+swf實現(xiàn)的復制功能使用方法
- JQuery zClip插件實現(xiàn)復制頁面內(nèi)容到剪貼板
- jQuery插件Zclip實現(xiàn)完美兼容個瀏覽器點擊復制內(nèi)容到剪貼板
- Zero Clipboard實現(xiàn)瀏覽器復制到剪貼板的方法(多個復制按鈕)
相關文章
淺談jQuery中 wrap() wrapAll() 與 wrapInner()的差異
本文結合W3School的文檔,分析了jQuery中 wrap() wrapAll() 與 wrapInner()的差異,并給出了圖文對比教程,非常的簡單實用,有需要的朋友可以參考下2014-11-11
jquery js 重置表單 reset()具體實現(xiàn)代碼
我們希望表單提交以后,能reset,由于jquery沒有這個方法,所以只能采用其他的方法來實現(xiàn)了,具體如下,有此需求的朋友可以參考下,希望對大家有所幫助2013-08-08
JavaScript中利用jQuery綁定事件的幾種方式小結
這篇文章主要介紹了JavaScript中利用jQuery綁定事件的幾種方式小結,包括不調(diào)用jQuery的"原生js"實現(xiàn)方式,需要的朋友可以參考下2016-03-03
JQuery中關于jquery.js與jquery.min.js的比較探討
jquery-1.4.2.min.js是優(yōu)化的,而query-1.4.2.js是易于開發(fā)著閱讀的,具體詳解祥看本文,希望對你有所幫助2013-05-05
使用jQuery實現(xiàn)兩個div中按鈕互換位置的實例代碼
這篇文章主要介紹了使用jQuery實現(xiàn)兩個div中按鈕互換位置的實例代碼,需要的朋友可以參考下2017-09-09

