看正文
瀏覽器複製其實是一個十分令人頭疼的問題,因為這涉及到瀏覽器安全,所以瀏覽器本生不會提供相應接口,我們也沒有辦法通過純js來實現這個功能,但是你會看到很多網站,如百度雲盤他們卻做到了這個功能,那究竟他們是如何實現的,今天就讓我帶你去看看他們的秘密。
首先這個功能對我來說是十分重要的,因為去轉盤網的私密分享必須要具備這個功能,截圖如下:
只要你點選點我複製按鈕,網盤私密分享的密碼就會自動的被複製到你的瀏覽器。其實這個功能本人最開始做的時候還是付出很多時間,因為他涉及到懸浮層的複製,問題的難度陡然增大許多,不過現在我還是願意公開代碼,希望大家喜歡。順便我指出其他幾篇我寫的部落格程式碼,希望喜歡:
百度網盤爬蟲
百度圖片爬蟲
ok搜搜爬蟲源碼
java分詞演算法
邀請好友報名
資料庫自動備份
好的,現在讓我們言歸正轉,瀏覽器複製需要兩個插件,請先下載:下載地址1 下載地址2
程式碼如下:var clip=null;<br>
clip = new ZeroClipboard.Client();//new 一個物件<br>
clip.setText(null);<br>
ZeroClipboard.setMoviePath( '${pageContext.request.contextPath}/media/js/ZeroClipboard.swf'); //和html不在同一目錄中需要設定setmoviepath<br>
//ZeroClipboard.setMoviePath( '../media/js/zeroclipboard10.swf');<br>
clip.setHandCursor(true);<br>
clip.addEventListener('mousedown', function(client) {<br>
<br>
window.passwd = document.getElementById("file-password").value;<br>
clip.setText(window.passwd);<br>
});<br>
<br>
clip.addEventListener('complete', function (client, text) {<br>
<br>
window.url = document.getElementById("file-url").value;<br>
var id=get_param("id");<br>
var type=get_param("type");<br>
window.open(window.url,'_self');<br>
$('.theme-popover').hide();<br>
$('.theme-popover-mask').hide();//將複製框dismiss<br>
document.getElementById("theme-popover").style.visibility="hidden";//影藏<br>
//記錄下載資訊<br>
$.ajax({<br>
type: "post",<br>
url: "${pageContext.request.contextPath}/download/statistic.action",<br>
dataType:"json",<br>
data:{<br>
id:id,<br>
type:type<br>
},<br>
success:function(data){;} <br>
});<br>
});<br>clip.glue('copy-password','copy-dialog');
程式碼中的記錄下載資訊等都是和去轉盤網有關係,你不必關心,下面一句:document.getElementById("theme-popover ").style.visibility="hidden";//影藏
非常重要,因為要懸浮層複製,如果是相對佈局flash是找不到覆蓋按鈕的,所以開始的時候
document.getElementById("theme-popover").style.visibility="visible";//私密分享時顯示
最後要影藏。本人建qq群,歡迎大家一起交流技術, 群號:512245829 喜歡微博的朋友關注:轉盤娛樂即可