تعلم أين تساعد جافا سكريبت في الخروج
ترميز mailto: عناوين URL بشكل صحيح مرهقة بعض الشيء. هذا صحيح بشكل خاص عندما تحتاج إلى تضمين سطر موضوع أو رسالة افتراضية أو عناصر أخرى. بدلاً من الكلمات البسيطة ، يجب عليك استخدام رموز عرافة ، والتي تمثل أحرف ASCII التي تم ترميزها وفقًا لمعيار RFC 1738 - معايير محدد موقع المعلومات (URL). لا تحتاج إلى تذكر أو إنشاء هذه التمثيلات السداسية من أعلى رأسك ، على الرغم من ذلك: تستطيع جافا سكريبت القيام بذلك نيابة عنك.
دالة encodeURIComponent () JavaScript
تقوم الدالة encodeURIComponent () JavaScript بترميز أي سلسلة يتم تمريرها كوسيطة وتقوم بإرجاعها للاستخدام. على سبيل المثال ، تقوم encodeURIComponent ("Doc، do da Dance!") بإنتاج Doc٪ 2C٪ 20do٪ 20da٪ 20Dance! .
نعم ، هذا غامض. إذا قمت بإجراء هذا التشفير يدويًا ، فمن المحتمل أنك سترتكب خطأً ، ولكن لن تفعله جافا سكريبت. لاستخدام encodeURIComponent () لتسهيل تكوين mailto : URLs ، قم باستبدال أي تواجد لسلسلة في URL باستخدام الدالة encodeURIComponent () ، والتي ترى السلسلة الخاصة بنا كوسيطة.
على سبيل المثال ، لنفترض أنك تريد إنشاء mailto: عنوان URL الذي يبدأ رسالة إلى recipient@example.com مع موضوع "متى ، متى الآن؟ (إذا كان" الآن "هنا)." سيبدو عنوان URL هكذا:
ميلتو: recipient@example.com الموضوع = <موضوع>
الموضوع هو السلسلة ، "متى ، متى الآن؟ (إذا كان" الآن "هنا)." يجعل السلسلة كوسيطة لـ encodeURIComponent () ما يلي:
encodeURIComponent ("متى ، متى الآن؟ (إذا كان \" الآن \ "هنا)") .
نتيجة استدعاء هذه الوظيفة هو:
عندما٪ 2C٪ 20when٪ 20is٪ 20now٪ 3F٪ 20 (إن٪ 20٪ 22now٪ 22٪ 20is٪ 20here)
باستخدام e ncodeURIComponent () مع Mailto: عناوين URL
لاستخدام encodeURIComponent () في mailto : URL ، أنشئ الرابط بالكامل (من "") داخل document JavaScript document.write () ، والذي سيكتب أي نص إلى المستند ، تمامًا كما لو أننا كتبناه في مصدر HTML .
فمثلا: