2016-03-22 7 views
7

मैं शुद्ध जेएस में एक कॉपी फ़ंक्शन बनाने की कोशिश कर रहा हूं, इसलिए कोई फ़्लैश नहीं। मुझे मिली समस्या यह है कि जब मैं क्लिपबोर्ड पर प्रतिलिपि बनाने का समर्थन नहीं करता हूं तो मैं कॉपी बटन नहीं दिखाना चाहता हूं।इसका उपयोग करने से पहले क्लिपबोर्ड कार्यक्षमता में कॉपी का पता लगाने के लिए

मैं क्लिपबोर्ड पर प्रतिलिपि बनाने के लिए document.execCommand('copy') विधि का उपयोग कर रहा हूं लेकिन इसके लिए समर्थन सबसे अच्छा नहीं है। उदाहरण के लिए, सफारी में execCommand फ़ंक्शन है लेकिन कॉपी पैरामीटर का समर्थन नहीं करता है। इसका मतलब यह है कि मैं बस यह जांच नहीं सकता कि फ़ंक्शन मौजूद है या नहीं।

इस डोडी समर्थन के कारण मुझे लगता है कि मुझे ब्राउज़र पहचान के रास्ते में जाना होगा, जैसे गिथब करता है जो मैं zeroclipboard समस्या को देखने से आया था। Here मुझे मिला कार्यान्वयन है।

क्या उपयोगकर्ता एजेंट का पता लगाने का कोई सही तरीका है? मैं NavigatorID.userAgent का उपयोग नहीं करना चाहूंगा क्योंकि इसे MDN के अनुसार बहिष्कृत किया गया है।

+0

क्या आपने 'typeof document.execCommand! == 'अपरिभाषित' की कोशिश की? – Zamboney

+1

जैसा कि मैंने सवाल में कहा था, सफारी में फ़ंक्शन document.execCommand है लेकिन पैरामीटर 'कॉपी' का समर्थन नहीं करता है। यही कारण है कि मैं ब्राउज़र पहचान के मार्ग पर जाने के बारे में सोच रहा हूं। यह उस पैरा के साथ फ़ंक्शन का उपयोग करने का प्रयास करते समय भी त्रुटि नहीं फेंकता है। – silverlight513

उत्तर

4

मैंने देखा है कि सफारी में संस्करण 10 (9.0 और 9.1 पर परीक्षण) के बाद निर्माण

document.execCommand('copy'); 

से पहले false वापस आ जाएगी। इस तथ्य का उपयोग सफारी में संगतता की जांच के लिए किया जा सकता है।

if (false == document.execCommand('copy')) { 
    // Logic for handling the copy functionality in some other way 
} 
+0

फ़ायरफ़ॉक्स (v48) झूठी और चेतावनी देता है जब मैंने इसे कंसोल में तब कोशिश की। एमडीएन के अनुसार, फ़ायरफ़ॉक्स ने v41 - https://developer.mozilla.org/en/docs/Web/API/Document/execCommand – silverlight513

+0

हाँ के बाद से आदेश का समर्थन किया है, वही समस्या है। दिलचस्प तथ्य यह है कि एफएफ v47 और एफएफ v49 'सत्य' देता है। V48 में एक बग की तरह लग रहा है। –

संबंधित मुद्दे

 संबंधित मुद्दे