जीमेल क्या एचटीएमएल 5 के registerProtocolHandler() का उत्सर्जन करता है के लिए समर्थन हासिल है:
इसके अलावा जो लोग सामान्य जीमेल और न एप्लिकेशन डोमेन विशिष्ट खाता prepopulate करना चाहते हैं, बजाय इस URL का उपयोग करें।
उदाहरण:
var compose = "https://mail.google.com/mail/?extsrc=mailto&url=" + encodeURIComponent("mailto:?subject=test");
यही कारण है कि जीमेल आप का उपयोग करने की उम्मीद है। निश्चित रूप से डोमेन-विशिष्ट रचना यूआरआई के लिए शुरुआत को संशोधित करें।
हालांकि, यह स्वयं द्वारा रचना फॉर्म को लोड करता है (इनबॉक्स पृष्ठ के साथ एकीकृत नहीं)। इसलिए, यदि आप इनबॉक्स पृष्ठ में एकीकृत रचना फॉर्म चाहते हैं, तो आपको लोड करने की आवश्यकता है:
"https://mail.google.com/mail/?compose=1&view=cm&fs=1&to=1&su=2&body=3&cc=4&bcc=5"
इसके बजाए। लेकिन, आपको यह सुनिश्चित करने के लिए कि वे एक HTTP यूआरआई में भेजने के लिए उपयुक्त हैं, सुनिश्चित करने के लिए पहले hfvalues प्राप्त करने और उनके प्रतिशत-एन्कोडिंग को ठीक करने के लिए मेलो यूआरआई को पार्स करने के लिए आवश्यक है। उस पर अधिक जानकारी के लिए नीचे देखें।
अब, एचटीएमएल 5 कम्पोज़ यूआरआई के साथ जीमेल क्या करता है, मेलो यूआरआई प्राप्त करने के लिए यूआरएल परम प्रतिशत-डीकोड करता है। फिर, यह hfvalues प्राप्त करने के लिए मेलो यूआरआई पार्स करता है। फिर, यह इन hfvalues का उपयोग यूआरआई को इनबॉक्स-एकीकृत एक बनाने के लिए करता है और आपको इसे रीडायरेक्ट करता है।
जीमेल की एचटीएमएल 5 विधि के साथ समस्या यह है कि यह hfvalues में '% 2B "में प्रतिशत-एन्कोड' + 'वर्ण नहीं है। इसका अंतिम परिणाम यह है कि मेलो यूआरआई में '+' अक्षर (वे यूआरआई के लिए मेल नहीं हैं) जीमेल कम्पोज़ फॉर्म में रिक्त स्थान के रूप में बाहर आते हैं।
Gmail बग हल करने के लिए, तो आप सिर्फ कार्य करें:
var compose = "https://mail.google.com/mail/?extsrc=mailto&url=" + encodeURIComponent("mailto:?subject=test".replace(/\+/g, "%2B"));
बजाय।
बग साल पहले रिपोर्ट किया गया था, लेकिन जीमेल इसे ठीक करने से इंकार कर देता है।
जैसा कि आपको इनबॉक्स-एकीकृत कंपोज़ यूआरआई के लिए भी देखना चाहिए, यदि आपके पास मेलो यूआरआई "mailto:? Subject = 1 + 2" है, तो आपको यह सुनिश्चित करना होगा कि आप su = 1% 2B2 उत्सर्जित करें यूआरआई लिखें और su = 1 + 2 नहीं। उत्तरार्द्ध '+' के बजाय विषय क्षेत्र में एक स्थान का कारण बन जाएगा। यह हिस्सा जीमेल के साथ एक बग नहीं है। यह बस HTTP काम करता है।
आप एचटीएमएल 5 तरीके से कैसे देखते हैं, यह देखने के लिए आप my Gmail Compose Extension for Opera (इसे अनजिप) के स्रोत देख सकते हैं। यह बहुत सरल है। लेकिन, इसमें + से% 2 बी वर्कअराउंड नहीं है।
हालांकि, आप the newer version of the extension देख सकते हैं कि मैं अधिक उन्नत हैंडलिंग के लिए परीक्षण कर रहा हूं (किसी को प्राथमिकता में डोमेन-विशिष्ट विकल्प का परीक्षण करने की आवश्यकता है)। यह '12 'केस, असुरक्षित वर्ण और डुप्लीकेट hfvalues को संभालने के लिए मेलto यूआरआई और उसके hfvalues सामान्य करने के लिए my custom, generic mailto URI parser का उपयोग करता है। यह यह चुनने का विकल्प भी प्रदान करता है कि आप एचटीएमएल 5 रचना यूआरआई का उपयोग करना चाहते हैं या नहीं।
आप चीजों को कैसे करें के लिए this User JS script for Opera पर भी एक नज़र डाल सकते हैं।
पहले उल्लिखित डुप्लिकेट एचएफवल्यू मुद्दे और अन्य मेलो यूआरआई सामान के लिए, my mailto URI spec देखें, जिसका उपयोग RFC6068 के लिए अनुसंधान और प्रतिक्रिया के लिए किया गया था।
नोट: सिर्फ इसलिए कि जीमेल उपयोगकर्ता के पास समृद्ध टेक्स्ट संपादन चालू है, इसका मतलब यह नहीं है कि जीमेल रचनात्मक यूआरआई में एचटीएमएल मार्कअप स्वीकार करेगा और इसका इलाज करेगा। यह सब पाठ के रूप में व्याख्या की गई है।
जब आप url-encode करते हैं तो आप न्यूलाइन के लिए क्या उपयोग कर रहे हैं? और आप मानक 'mailto:' URI योजना का उपयोग क्यों नहीं कर रहे हैं? ('href =" mailto: [email protected]? subject = SubjectHere "') – Anthony
असल में यह लिंक जीमेल कंपोज़ स्क्रीन खोलता है - मैंने न्यूलाइन के साथ-साथ एचटीएमएल ब्रेक के यूरेनकोडिंग की कोशिश की लेकिन यह काम नहीं किया :(- यह एक google के लिए है ऐप्स आधारित प्रोजेक्ट – Ali
प्रश्न में प्रदान किए गए लिंक को सही करने के कारण क्योंकि प्रदान किया गया लिंक सर्वर त्रुटि पृष्ठ पर जाता है। यह दूसरों की मदद कर सकता है। https://mail.google.com/?view=cm&fs=1&tf=1&source=mailto&to= WHOEVER% 40COMPANY.COM और su = SUBJECTHERE और cc = WHOEVER% 40COMPANY.COM और bcc = WHOEVER% 40COMPANY.COM और body = PREPOPULATEDBODY –