انجمن ایران پی اچ پی
Copy To ClipBoard - نسخه قابل چاپ

+- انجمن ایران پی اچ پی
+-- انجمن: کلاینت ساید/Client side (https://forum.iranphp.org/Forum-%DA%A9%D9%84%D8%A7%DB%8C%D9%86%D8%AA-%D8%B3%D8%A7%DB%8C%D8%AF-Client-side)
+--- انجمن: JavaScript (https://forum.iranphp.org/Forum-JavaScript)
--> +--- موضوع: Copy To ClipBoard



Copy To ClipBoard - hamid_80386 - ۱۳۹۱ آبان ۰۴

سلام

بچه ها برای copy to clipboard چیزی غیر از این سراغ دارید:
کد:
clipboardData.setData("Text", "Some Text")

کد بالا فقط تو IE کار میکنه


RE: Copy To ClipBoard - undefined - ۱۳۹۱ آبان ۰۴

لینک: http://beckelman.net/demo/copy-to-clipboard-with-zeroclipboard-flash-10-and-jquery


RE: Copy To ClipBoard - hamid_80386 - ۱۳۹۱ آبان ۰۵

احسان این کد رو بعد ضمیمه کردن فایل جاواش زدم، ولی کار نکرد:

کد:
    var clip = new ZeroClipboard.Client();

    clip.setText(text1);



RE: Copy To ClipBoard - undefined - ۱۳۹۱ آبان ۰۵

تمام فایل هاش رو درست ضمیمه میکنی؟
من رو خودش تست زدم کار میکرد.
روی لوکال یا سایت امتحانش کن، ممکنه مشکل به خاطر پلاگین فلش باشه.


RE: Copy To ClipBoard - hamid_80386 - ۱۳۹۱ آبان ۰۵

مگه چند تا فایل داره؟

یه zero-clipboard.js هست دیگه Huh


RE: Copy To ClipBoard - undefined - ۱۳۹۱ آبان ۰۵

کد:
ZeroClipboard.swf

این فایل رو هم کنار صفحه (مثلا index.php) قرار میدی؟


RE: Copy To ClipBoard - hamid_80386 - ۱۳۹۱ آبان ۰۵

نه، این چیه؟

بعد اگه کاربر Flash Player نداشته باشه کارش لنگ میمونه؟

یعنی راهی بغیر از فلش نیست؟


RE: Copy To ClipBoard - undefined - ۱۳۹۱ آبان ۰۵

نقل قول:بعد اگه کاربر Flash Player نداشته باشه کارش لنگ میمونه؟

تا جایی که من یادم میاد روی فایر فاکس کامپونتش رو نصب نکرده بودم و به احتمال زیاد روی خود فایرفاکس بوده. کروم هم همین طور.

نقل قول:یعنی راهی بغیر از فلش نیست؟

به نظر من بهترین راه همینه، روش های دیگه ای هم وجود داره مثلا برای فایر فاکس میتونی از این تابع استفاده کنی:

کد:
function ctc()
{
    netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
    var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
    if (!clip) return;
    var trans = Components.classes['@mozilla.org/widget/transferable;1']
              .createInstance(Components.interfaces.nsITransferable);
    if (!trans) return;
    
    trans.addDataFlavor('text/unicode');
    
    var str = new Object();
    var len = new Object();
    
    var str = Components.classes["@mozilla.org/supports-string;1"]
                .createInstance(Components.interfaces.nsISupportsString);
    
    var copytext = "The Text you want to copy";
    
    str.data = copytext;
    
    trans.setTransferData("text/unicode", str, copytext.length*2);
    
    var clipid=Components.interfaces.nsIClipboard;
    
    if (!clip) return false;
    
    clip.setData(trans, null, clipid.kGlobalClipboard);    
}

هنگام کپی هم اون پیامش یه مقدار جالب نیست!


RE: Copy To ClipBoard - hamid_80386 - ۱۳۹۱ آبان ۰۶

بازم کار نکرد احسان

کد پی‌اچ‌پی:
function copy1(text1)
{
    
ZeroClipboard.moviePath '<?php echo URL_PATH ?>js/ZeroClipboard.swf';
    var 
clip = new ZeroClipboard.Client();
    
clip.setText(text1);





RE: Copy To ClipBoard - undefined - ۱۳۹۱ آبان ۰۶

کد:
ZeroClipboard.moviePath

مقدار moviePath رو داخل ZeroClipboard.js اصلاح کن. برای چی اوردیش داخل تابع؟
سعی طبق همون مثال/نمونه ای که بت داده ازش استفاده کنی، تغییرش یه کم ادمو اذیت میکنه.