ক্রোম এবং ফায়ারফক্সে ক্লিপবোর্ড জাভাস্ক্রিপ্ট ফাংশনে গোপন অনুলিপি?


150

হালনাগাদ

দেখে মনে হচ্ছে ব্রাউজারগুলি জেএসে স্থানীয়ভাবে অনুলিপি সমর্থন করতে শুরু করেছে


ম্যাকের ক্রোম এবং ফায়ারফক্স উভয়ের কনসোল উইন্ডোগুলিতে আমি সম্পাদন করতে পারি

copy("party in your clipboard!");

এবং পাঠ্যটি আমার ক্লিপবোর্ডে অনুলিপি করা হয়েছে। আমি এসও এবং গুগল অনুসন্ধান করেছি এবং এ সম্পর্কে কিছুই খুঁজে পাচ্ছি না।

  • এগুলি কি প্রতিটি ব্রাউজারে নির্দিষ্ট?
  • এই জাভাস্ক্রিপ্ট ফাংশনগুলিতে আমি আরও তথ্য কোথায় পেতে পারি?

ব্রাউজার সংস্করণ:

বিকল্প পাঠ বিকল্প পাঠ

জাভাস্ক্রিপ্ট 'অনুলিপি' সম্পাদন করার সময় ক্রোম কনসোল থেকে ফিরে এসেছিল

function (object)
    {
        if (injectedScript._type(object) === "node") {
            var nodeId = InjectedScriptHost.pushNodePathToFrontend(object, false, false);
            InjectedScriptHost.copyNode(nodeId);
        } else
            InjectedScriptHost.copyText(object);
    }
  • এই কোড মানে কি?

সমস্ত ক্রোম এক্সটেনশান অক্ষম করে ক্রোম কনসোলে কপি ফাংশন কার্যকর করার 2 টি স্ক্রিনশট এখানে রয়েছে

বিকল্প পাঠ

বিকল্প পাঠ


আপনি কোন ফায়ারফক্স কনসোল ব্যবহার করছেন, ত্রুটি কনসোল?
ম্যাথু ফ্ল্যাশেন

2
আমি কোনও সি ++ প্রোগ্রামার নই, তবে আমি ওপেনসোর্স.অ্যাপলvoid InjectedScriptHost::copyText(const String& text) . com
কাই

@ কাই, হুঁ মমমম ... দেখে মনে হচ্ছে এটি তখন অ্যাপলের ওপেন সোর্স ওয়েবকিটটিতে নির্মিত?
মাইক গ্রেস

দুর্ভাগ্যক্রমে এই আদেশটি কোনও ক্রোম এক্সটেনশান থেকে কাজ করে না, সুতরাং এটি অবশ্যই ওয়েবকিটের বিকাশকারী সরঞ্জামগুলির কনসোলের জন্য সুনির্দিষ্ট হতে হবে।
পরমাণুগুলি

এটি সাফারির সাথেও কাজ করে তা নিশ্চিত করুন। ভাল লাগছে!
বিজি

উত্তর:


62

আমি বিশ্বাস করি এগুলি পূর্বনির্ধারিত ফায়ারব্যাগ কনসোল ফাংশন - কমপক্ষে ফায়ারব্যাগের ক্ষেত্রে এটিই মনে হয়। যদি আপনি window.copyউদাহরণস্বরূপ কল করার চেষ্টা করেন , আপনি ফাংশনটি সংজ্ঞায়িত না হওয়ার বিষয়ে একটি সতর্কতা পাবেন, সুতরাং এটি অবশ্যই কোনও ব্রাউজার ফাংশন নয়, এবং সাধারণ জাভাস্ক্রিপ্ট ফাইলগুলিতে ব্যবহার করা যাবে না। নীচের ফাংশনগুলি জাভাস্ক্রিপ্ট কনসোলে এটি কিছুটা খেলার পরে কিছুটা কাজ করার পরেও মনে হচ্ছে:

  • clear()
  • profile()

Chrome কনসোলে এগুলি চালনা ওয়েবকিট কনসোলে এই ফাংশনগুলির পিছনের উত্সটি প্রকাশ করে:

> profile
function ()
{
return console.profile.apply(console, arguments)
}

> clear
function ()
{
InjectedScriptHost.clearConsoleMessages();
}

> copy
function (object)
{
if (injectedScript._type(object) === "node")
object = object.outerHTML;
InjectedScriptHost.copyText(object);
}

যদিও ফায়ারব্যাগ উত্স কার্যকারিতার তালিকাও সংজ্ঞায়িত করে:

this.clear = function()  // no web page interaction
{
    Firebug.Console.clear(context);
};

this.inspect = function(obj, panelName)  // no web page interaction
{
    Firebug.chrome.select(obj, panelName);
};

this.keys = function(o)
{
    return FBL.keys(o);  // the object is from the page, unwrapped
};

this.values = function(o)
{
    return FBL.values(o); // the object is from the page, unwrapped
};

// etc...

2
দেখে মনে হচ্ছে নোড-ইন্সপেক্টর ডিবাগিং কনসোল ব্যবহার করার সময় এটি ক্রোম 44 এ কাজ করে না। Clipboard is not enabled in hosted mode. Please inspect using chrome://inspect
jcollum

1
খুশী হলাম। এটি ক্রোম সংস্করণ 61.0.3163.100 (অফিসিয়াল বিল্ড) (64-বিট) এ কাজ করে!
শানিমাল

1
আমার ক্রোম বিকাশকারী সরঞ্জামটিতে দেখে মনে হচ্ছে এটি কাজ করছে এবং এটিও কাজ করে window.copy('content')(ফায়ারফক্সে কেবল copy('content')কাজ করে)
মোরহুক

1

এখানে আপনি ক্রোম দেব সরঞ্জামগুলির রেফারেন্স কপি কমান্ডটি দেখতে পারেন: https://developers.google.com/web/tools/chrome-devtools/console/utilities#copy

আপনার আসল জেএস ক্রস ব্রাউজারগুলিতে এই কমান্ডগুলি ব্যবহার করা উচিত নয় (কেবল কথা বলার জন্য কনসোলটিতে ডিবাগ করার জন্য)।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.