我想在動態生成HTML的頁面上使用ZeroClipboard插件的最新版本。我嘗試了幾種不同的實現方式,但它們都具有相同的整體效果。我看起來最終會出現一個包含Flash元素的頁面,因爲當我右鍵單擊適當的元素時,彈出「關於Flash Player」彈出窗口 - 但我也看到在相同的彈出窗口中「Movie not loaded」ZeroClipboard事件沒有觸發
我正在使用JQuery 1.9.1和Twitter Bootstrap 2.3.1。我的Flash插件是v11.7.700.202。我的Web服務器IIS7.5是
我使用動態生成HTML是在一個循環中讀取用戶ID的排列,看起來像這樣的代碼:
str=str+ '<span class="bMail_address" id=span-"'+
st.EmailAddresses[i]+
'" data-clipboard-text="'+
st.EmailAddresses[i]+
'@mydomain.com">'+
st.EmailAddresses[i] +
"@mydomain.com </span>";
通過數組循環和outputtng後得到的線,然後我嘗試在ZeroClipboard東西添加如下: -
// bind ZeroClipboard
$('.bMail_address').each (function() {
// read text to copy from the data-clipboard-text attribute
var msg=$(this).attr('data-clipboard-text');
//create ZeroCiplboard object
var clip = new ZeroClipboard();
// set the text to copy
clip.setText(msg);
// setup event handlers
clip.on('complete', function (client, text) {
alert("copied: "+text+ "to clipboard");
});
clip.on('noflash', function (client, args) {
alert("You don't support flash");
});
// glue the object to the element
clip.glue($(this));
});
使用Chrome的調試工具,我可以看到迭代通過循環爲我所有新創建的對象創建新ZeroClipboard對象和有沒有未捕獲的例外,但警報從未發生過,所以我假設的「完整」事件永遠不會觸發
我敢肯定,我做了一些簡單的小白錯誤,但我看不出它
所有的想法和建議,感激地收到
感謝您的建議,我會在週末嘗試 –
不幸的是,它似乎並沒有工作,但感謝您的努力,而且代碼比我的更好。 –
我可以看到每個「Clip [i]」被創建,並且爲每個剪輯對象內的moviePath(相同的域,不同的目錄)和處理程序創建的選項都被創建。但是,當我單擊網頁中的電影對象時,事件並未被解僱。 電影對象defintely創建因爲當我右鍵單擊我得到的「關於Adobe Flash Player」菜單,而不是通常的一個HTML元素 就如何進一步調試這個任何想法? –