国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開發(fā) > JS > 正文

Jquery跨瀏覽器文本復(fù)制插件Zero Clipboard的使用方法

2024-05-06 16:29:23
字體:
供稿:網(wǎng)友
這篇文章主要介紹了Jquery跨瀏覽器文本復(fù)制插件Zero Clipboard的使用方法,需要的朋友可以參考下
 

當(dāng)開發(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瀏覽器中的安全沖突)
無形的覆蓋,無干擾,頁(yè)面設(shè)計(jì)
支持CSS“懸停”和“活躍”狀態(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)目中。

用法:

1.) 首先引入核心文件

 

復(fù)制代碼代碼如下:

<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>

例一:

 

復(fù)制代碼代碼如下:

<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特效:

 

復(fù)制代碼代碼如下:

/* 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文本上,其實(shí)顯示文字可以根據(jù)css來定義*/
a:hover, a.hover {...}
a:active, a.active {...}

 

至此,該插件使用方法已經(jīng)介紹結(jié)束,對(duì)于使用者的開發(fā)者來說,剩下的擴(kuò)展方面就要根據(jù)需求而定了。

 


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到JavaScript/Ajax教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 玛多县| 潍坊市| 新宁县| 白玉县| 丽水市| 黑水县| 罗定市| 义乌市| 雷州市| 东山县| 内黄县| 乐平市| 兴和县| 喀什市| 凯里市| 云和县| 闻喜县| 喜德县| 醴陵市| 城步| 龙门县| 稷山县| 宜章县| 安龙县| 临桂县| 永新县| 闵行区| 广州市| 巴塘县| 泰顺县| 淮安市| 福海县| 大英县| 百色市| 四平市| 和平县| 博爱县| 屯昌县| 岳阳县| 龙岩市| 元谋县|