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


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

بهترین گزینه برای رسیدن به این هدف چیست؟

من از ویژگی mailto: آگاه هستم، اما کاربر باید روی آن کلیک کند و مطمئن نیستم که آیا اجازه میدهد موضوع و محتوا را مشخص کنید؟

پاسخ شماره ۱

همانطور که توسط RFC 6068 توضیح داده شده است، mailto به شما اجازه میدهد موضوع و بدنه، و همچنین فیلدهای کپی به را مشخص کنید. برای مثال:

mailto:[email ?subject=Subject&body=message%20goes%20here

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

window.location.href = "mailto:[email ?subject=Subject&body=message%20goes%20here";

مراقب باشید که هیچ روش واحد و استانداردی وجود ندارد که مرورگرها یا کلاینتهای ایمیل لینکهای mailto را مدیریت کنند (مثلاً فیلدهای موضوع و متن ممکن است بدون هشدار حذف شوند). همچنین این احتمال وجود دارد که مسدودکنندههای پنجرههای بازشو و تبلیغات، نرمافزارهای ضدویروس و غیره بهطور خاموش باز شدن اجباری لینکهای mailto را مسدود کنند.

پاسخ شماره ۲

جیکوئری:

$(function () {
      $('.SendEmail').click(function (event) {
        var email = '[email ';
        var subject = 'Test';
        var emailBody = 'Hi Sample,';
        var attach = 'path';
        document.location = "mailto:"+email+"?subject="+subject+"&body="+emailBody+
            "?attach="+attach;
      });
    });

اچتیامال:

 <button class="SendEmail">Send Email</button>