دسته بندی ها
18:27 1399/08/30

کپی متن در حافظه توسط جاوا اسکریپت

مشخصات سوال کننده :
کاربر : hamid_b     امتیاز کاربر : 518     رتبه کاربر : 4
دسته بندی : جاوا اسکریپت

به این سوال امتیاز بدهید    0
تعداد بازدید این سوال : 6835
هوش مصنوعی

پاسخ هوش مصنوعی

برای کپی کردن متن به حافظه کلیپبورد در جاوا اسکریپت، می توانید از تابع navigator.clipboard.writeText() استفاده کنید. در زیر یک نمونه کد برای این کار آمده است:

function copyToClipboard(text) {
    navigator.clipboard.writeText(text).then(() => {
        console.log('متن به کلیپبورد کپی شد: ' + text);
    }).catch(err => {
        console.error('خطا در کپی متن: ', err);
    });
}

// استفاده از تابع
copyToClipboard('متنی که می خواهید کپی کنید');

این تابع متن مورد نظر را به کلیپبورد کاربر کپی می کند و اگر کار موفقیت آمیز باشد، پیامی در کنسول نمایش داده می شود.

به این پاسخ امتیاز بدهید    0
امتیاز: - رتبه: -
پاسخ دهنده : fateme 18:44 1399/08/30

کپی متن در حافظه توسط جاوا اسکریپت

کپی متن در حافظه توسط جاوا اسکریپت

 

بله امکان کپی کردن متن در حافظه یا کلیپ بورد کاربر توسط جاوا اسکریپت وجود داره. برای این کار باید از تابع navigator استفاده کرد. به مثال زیر توجه کنید این کار رو آموزش داده.

 

let myVar="myString"
navigator.clipboard.writeText(myVar)

 

در قطعه کد بالا در خط اول یک متغیر به نام myVar ایجاد کردیم و رشته myString رو درون اون ریختیم. سپس در خط دوم این رشته رو در کلیپ بورد کاربر ذخیره کردیم. الان اگر کاربر دکمه Ctrl + V رو همزمان بزنه متن myString پیست میشه.

 

استفاده از تابع CopyText.Select

یک روش دیگه هم برای کپی متن در کلیپ بورد توسط جاوا اسکریپت وجود داره و اون هم استفاده از تابع copyText.Select هست. در مثال زیر به طور کامل این کار انجام شده.

 

<!DOCTYPE html>
<html>
<body>

<p>Click on the button to copy the text from the text field. Try to paste the text (e.g. ctrl+v) afterwards in a different window, to see the effect.</p>

<input type="text" value="Hello World" id="myInput">
<button onclick="myFunction()">Copy text</button>

<p>The document.execCommand() method is not supported in IE8 and earlier.</p>

<script>
function myFunction() {
  var copyText = document.getElementById("myInput");
  copyText.select();
  copyText.setSelectionRange(0, 99999)
  document.execCommand("copy");
  alert("Copied the text: " + copyText.value);
}
</script>

</body>
</html>

کد بالا رو کپی و پیست کنید و تست کنید. 

ویرایش شده در دوشنبه 10 خرداد 1400 ساعت 02:38:35
به این پاسخ امتیاز بدهید    1
امتیاز: 1635 رتبه: 2
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود