ZeroClipboard :version 1.0.7 app
通常用法與網上發的博客差很少,今天只對如何修改flash塊的大小進行說明。 url
先貼代碼: spa
ZeroClipboard.setMoviePath("${base}/js/ZeroClipboard/ZeroClipboard.swf"); var clip=new ZeroClipboard.Client(); clip.setHandCursor(true); clip.reposition(); clip.glue(document.getElementById("cpurl"),'moduleConferenceContainerPanel'); //修改div樣式;綁定按鈕以後修改div,確保div和flash在按鈕之上且徹底覆蓋按鈕【ZeroClipboard:version1.0.7】 var stylesToAdd = new Array('absolute','1100px','119px','70','20','zIndex'); clip.div.style.left=stylesToAdd[1]; clip.div.style.width=stylesToAdd[3]+'px'; clip.div.style.height=stylesToAdd[4]+'px'; //修改flash覆蓋大小 clip.div.innerHTML=clip.getHTML(stylesToAdd[3],stylesToAdd[4]); clip.addEventListener('mouseDown',function(){ clip.setText($("#wapurlcp").val()); }); clip.addEventListener('complete',function(){ if($("#wapurlcp").val()==null||$("#wapurlcp").val()==""){ $.messager.alert("提示","請選擇欄目!","info"); } else{ $.messager.alert("提示","地址已成功複製!","info"); } });
//修改div樣式;綁定按鈕以後修改div,確保div和flash在按鈕之上且徹底覆蓋按鈕【ZeroClipboard:version1.0.7】 var stylesToAdd = new Array('absolute','1100px','119px','70','20','zIndex'); clip.div.style.left=stylesToAdd[1]; clip.div.style.width=stylesToAdd[3]+'px'; clip.div.style.height=stylesToAdd[4]+'px'; //修改flash覆蓋大小 clip.div.innerHTML=clip.getHTML(stylesToAdd[3],stylesToAdd[4]);前提是要先把flash按鈕先弄出來哦!!!還有不要只看我寫的,重要的是本身去驗證!
若是有興趣去看ZeroClipboard.js裏的方法! code
本人第一次寫,有錯請指正!!! ip
-------------------------------------------------------------------- get
注:以上代碼有問題,請各位包含哈!主要是把定義flash按鈕的大小及套該flash按鈕的div的樣式修改爲固定值了!!!實在........哎! 博客
今天本身又用到該功能了,發現了一個很大的問題:雖然flash按鈕大小改變了,但flash按鈕的位置卻發生了變化(再也不咱們button之上)。緣由分析:頁面樣式改變,flash按鈕定位不到咱們的button了,這時你可能會說用clip.reposition()。的確這個能夠重新定位咱們的button,可是有可能flash按鈕並無把咱們的button徹底覆蓋!因此找到如下方法: flash
var elem = document.getElementById("cpurl");//咱們定義的button var appendElem = 'moduleConferenceContainerPanel';//最外層div,也即body下的第一個div(套住咱們定義的button的div) ZeroClipboard.setMoviePath("${base}/js/ZeroClipboard/ZeroClipboard.swf"); var clip=new ZeroClipboard.Client(); clip.setHandCursor(true); clip.glue(elem,appendElem); var box = ZeroClipboard.getDOMObjectPosition(ZeroClipboard.$(elem), ZeroClipboard.$(appendElem));//在ZeroClipboard.js中找的方法,拿到flash按鈕處的div樣式來源!我本人看來,差很少快從新寫glue()方法了! //修改div樣式;綁定按鈕以後修改div,確保div和flash在按鈕之上且徹底覆蓋按鈕【ZeroClipboard:version1.0.7】 clip.div.style.left=(box.left-25)+'px'; clip.div.style.width=(box.width+22)+'px'; clip.div.style.height=(box.height+8)+'px'; //修改flash覆蓋大小 clip.div.innerHTML=clip.getHTML(box.width+22,box.height+8); clip.addEventListener('mouseDown',function(){ clip.setText($("#wapurlcp").val()); }); clip.addEventListener('complete',function(){ if($("#wapurlcp").val()==null||$("#wapurlcp").val()==""){ $.messager.alert("提示","請選擇欄目!","info"); } else{ $.messager.alert("提示","地址已成功複製!","info"); } });