2012-10-30 13 views
7

मैं js विधि .click() इस प्रकार उपयोग करना चाहते हैं:.click() विधि, ब्राउज़र समर्थन

document.getElementById(id).click(); 

लेकिन चूंकि यह जरूरी है कि यह काम करता है, मैं क्या .click() विधि का समर्थन ब्राउज़र की सोच रहा था है।

+2

यदि आप क्रॉस-ब्राउज़र संगतता के बारे में वास्तव में चिंतित हैं, तो मैं jQuery जैसी जेएस लाइब्रेरी का उपयोग करने का सुझाव दूंगा। –

+0

क्या आप जानते हैं कि jQuery में '.click()' विधि को प्रतिस्थापित कर सकता है? – ghego1

+2

['click'] (http://api.jquery.com/click/) विधि :-) –

उत्तर

1

एकमात्र ब्राउज़र जो मैंने सामना किया है वह .click() का समर्थन नहीं करता है सफारी। सफारी बटन पर .click() का समर्थन करता है (उदा। <input type="button" />) लेकिन एंकर तत्वों (जैसे <a href="#">Click Me</a>) जैसे अन्य तत्वों पर नहीं।

सफारी के लिए, आप एक तरीके का उपयोग करने के लिए है:

function click_by_id(your_id) 
{ 
    var element = document.getElementById(your_id); 
    if(element.click) 
     element.click(); 
    else if(document.createEvent) 
    { 
     var eventObj = document.createEvent('MouseEvents'); 
     eventObj.initEvent('click',true,true); 
     element.dispatchEvent(eventObj); 
    } 
} 

ऊपर समारोह का उपयोग करना, आप ब्राउज़रों के 90% + समर्थन कर सकते हैं।

आईई 7-10, फ़ायरफ़ॉक्स, क्रोम, सफारी में परीक्षण किया गया।

+0

पूरी तरह से सही, भले ही एक पुराना सवाल, मुझे अभी भी सफारी के साथ परेशानी हो रही है और() मुफ्त दिन पहले एक छोटी परियोजना में क्लिक करें जिसे मैं काम कर रहा था – ghego1

0

MDN के अनुसार, HTMLElement.click() क्रोम 20+, फ़ायरफ़ॉक्स 5+ और सफारी 6+ द्वारा समर्थित है। लेकिन वह might be inaccurate

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