Jquery跨瀏覽器文本復(fù)制插件Zero Clipboard的使用方法
當(dāng)開(kāi)發(fā)者需要對(duì)某局部文本進(jìn)行點(diǎn)擊復(fù)制效果時(shí),在IE下實(shí)現(xiàn)比較簡(jiǎn)單。但要想做到跨瀏覽器比較困難了。Zero Clipboard 它利用 Flash 進(jìn)行復(fù)制,所以只要瀏覽器裝有 Flash 就可以運(yùn)行,而且比IE的document.execCommand(“Copy”) 更加靈活。
Zero Clipboard 的實(shí)現(xiàn)原理
Zero Clipboard 利用 Flash 進(jìn)行復(fù)制,之前有 Clipboard Copy 解決方案,其利用的是一個(gè)隱藏的 Flash。但最新的 Flash Player 10 只允許在 Flash 上進(jìn)行操作才能啟動(dòng)剪貼板。所以 Zero Clipboard 對(duì)此進(jìn)行了改進(jìn),用了一個(gè)透明的 Flash ,讓其漂浮在按鈕之上,這樣其實(shí)點(diǎn)擊的不是按鈕而是 Flash ,也就可以使用 Flash 的復(fù)制功能了。
Zero Clipboard 特點(diǎn)介紹:
兼容支持Flash 10
避免使用第三方瀏覽器插件(的Adobe Flash瀏覽器中的安全沖突)
無(wú)形的覆蓋,無(wú)干擾,頁(yè)面設(shè)計(jì)
支持CSS“懸?!焙汀盎钴S”狀態(tài)
保留目標(biāo)元素的“點(diǎn)擊”,”mouseenter”和”mouseleave”的事件
供應(yīng)回調(diào)函數(shù)“復(fù)制前”和“復(fù)制”
極輕的重量! (7KB精縮)
首先下載 Zero Clipboard ,并解壓縮。其中需要兩個(gè)文件:ZeroClipboard.js 和 ZeroClipboard.swf ,將這兩個(gè)文件放入到你的項(xiàng)目中。
點(diǎn)擊下載: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.) 在頁(yè)面代碼里寫入功能模塊,定義copy復(fù)制按鈕元素屬性信息
<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">點(diǎn)擊復(fù)制效果預(yù)覽</a>
<p id="description">文本源……</p>
例二:
<a href="#" id="copy-dynamic">點(diǎn)擊復(fù)制效果預(yù)覽:</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.) 供應(yīng)定制的回調(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.) 默認(rèn)參數(shù)。
擴(kuò)展介紹:
1.) 測(cè)試兼容IE6,IE7,IE8,F(xiàn)F 3.6,Chrome瀏覽器8,Safari 5的,歌劇11
2.) 適當(dāng)?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: */
/*大概意思就是說(shuō) ZeroClip是flash疊加……就是說(shuō)flash疊加在了text文本上,其實(shí)顯示文字可以根據(jù)css來(lái)定義*/
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)介紹結(jié)束,對(duì)于使用者的開(kāi)發(fā)者來(lái)說(shuō),剩下的擴(kuò)展方面就要根據(jù)需求而定了。
- ZeroClipboard插件實(shí)現(xiàn)多瀏覽器復(fù)制功能(支持firefox、chrome、ie6)
- 使用ZeroClipboard解決跨瀏覽器復(fù)制到剪貼板的問(wèn)題
- zeroclipboard 單個(gè)復(fù)制按鈕和多個(gè)復(fù)制按鈕的實(shí)現(xiàn)方法
- JavaScript flash復(fù)制庫(kù)類 Zero Clipboard
- zeroclipboard復(fù)制到剪切板的flash
- Zero Clipboard js+swf實(shí)現(xiàn)的復(fù)制功能使用方法
- JQuery zClip插件實(shí)現(xiàn)復(fù)制頁(yè)面內(nèi)容到剪貼板
- jQuery插件Zclip實(shí)現(xiàn)完美兼容個(gè)瀏覽器點(diǎn)擊復(fù)制內(nèi)容到剪貼板
- Zero Clipboard實(shí)現(xiàn)瀏覽器復(fù)制到剪貼板的方法(多個(gè)復(fù)制按鈕)
相關(guān)文章
jQuery ui autocomplete選擇列表被Bootstrap模態(tài)窗遮擋的完美解決方法
這篇文章主要介紹了jQuery ui autocomplete選擇列表被Bootstrap模態(tài)窗遮擋的完美解決方法,本文介紹的非常詳細(xì),解決過(guò)程思路明了,需要的朋友可以參考下2016-09-09利用jQuery實(shí)現(xiàn)WordPress中@的ID懸浮顯示評(píng)論內(nèi)容
這篇文章主要介紹了使用JavaScript實(shí)現(xiàn)WordPress中ID懸浮顯示評(píng)論的功能,就是在樓中樓式的評(píng)論中顯示被評(píng)論的主體內(nèi)容,需要的朋友可以參考下2015-12-12jquery1.83 之前所有與異步列隊(duì)相關(guān)的模塊詳細(xì)介紹
jQuery在1.5引入了Deferred對(duì)象(異步列隊(duì)),當(dāng)時(shí)它還沒(méi)有劃分為一個(gè)模塊,放到核心模塊中。直到1.52才分割出來(lái)2012-11-11jQuery實(shí)現(xiàn)菜單式圖片滑動(dòng)切換
這篇文章主要介紹了jQuery實(shí)現(xiàn)菜單式圖片滑動(dòng)切換效果,主要是依托于jQuery Lightbox插件來(lái)實(shí)現(xiàn),非常炫酷,這里推薦給小伙伴們2015-03-03jQuery取得元素標(biāo)簽名稱小結(jié)(附代碼)
這篇文章主要介紹了 jquery如何取得元素標(biāo)簽名稱,將html和js代碼附上,具體操作步驟大家可查看下文的詳細(xì)講解,感興趣的小伙伴們可以參考一下。2017-08-08判斷多個(gè)input type=file是否有已經(jīng)選擇好文件的代碼
在each中使用return false退出循環(huán),使用return true結(jié)束當(dāng)前次循環(huán),進(jìn)行下一次循環(huán)2012-05-05jquery trigger函數(shù)執(zhí)行兩次的解決方法
這篇文章主要介紹了jquery trigger函數(shù)執(zhí)行兩次的解決方法,詳細(xì)分析了trigger函數(shù)執(zhí)行兩次的原因與響應(yīng)的解決技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2016-02-02jquery+php實(shí)現(xiàn)搜索框自動(dòng)提示
百度上有個(gè)很使用的功能,就是用戶在搜索的時(shí)候會(huì)自動(dòng)提示相關(guān)搜索條件以供選擇,非常人性化的設(shè)計(jì),我們?nèi)绾螌⒋斯δ芊诺阶约旱捻?xiàng)目中呢,經(jīng)過(guò)一番研究,終于實(shí)現(xiàn)了此功能,分享給大家。2014-11-11