questions - javascript programs




क्या जावास्क्रिप्ट के माध्यम से एक लिंक(या किसी तत्व का) क्लिक ईवेंट ट्रिगर करना संभव है? (4)

मैं कुछ जावास्क्रिप्ट कोड लिख रहा हूं जिसे एक लिंक के लिए click ईवेंट को आग लगाना होगा। इंटरनेट एक्सप्लोरर में मैं यह कर सकता हूं

var button = document.getElementById('myButton');
button.click();

लेकिन यह फ़ायरफ़ॉक्स में काम नहीं करता है, और मैं किसी अन्य ब्राउज़र को मानता हूं। फ़ायरफ़ॉक्स में, मैंने यह किया है

var button = document.getElementById('myButton');
window.location = button.href;

मुझे लगता है कि ऐसा करने का यह सबसे अच्छा तरीका नहीं है। क्या एक click इवेंट ट्रिगर करने का कोई बेहतर तरीका है? अधिमानतः कुछ ऐसा जो तत्व या ब्राउज़र के प्रकार के बावजूद काम करता है।


अरे, मेरा मतलब पुराने धागे को खोदने का नहीं है - लेकिन मैं भी इसी समस्या का उत्तर खोज रहा था, और jQuery 1.3x पर एक नया फ़ंक्शन पाया (मुझे अजाक्स लोड की गई सामग्री के साथ समस्या हो रही थी)

यहां बताया गया है कि मैंने इसे कैसे कार्यान्वित किया:

एचटीएमएल

<a class="navlink" href="mypage.html">Online Estimate</a>

लोड स्क्रिप

$(".pagelink").click(function(){
    $(".navlink[href="+$(this).attr("href")+"]").trigger('click');
    return false;
});

लोड किया गया एचटीएमएल

<a class="pagelink" href="mypage.html">Online Estimate</a>

समारोह 'ट्रिगर इवेंट' है ...
यहां पर अधिक जानकारी: http://docs.jquery.com/Events/trigger#eventdata


मैं इस चुपके से चुपचाप खोज रहा था और सबसे आसान काम करने लग रहा था!

document.getElementById('foo').onclick();

यह क्रोम 7.0.5 और यानी 8.0.6 में काम किया


मोज़िला की जेएस क्रियाओं / घटनाओं के लिए एक कठोर नीति है - मुझे क्लिक () ईवेंट के साथ भी इसी तरह की समस्याएं थीं। एक्सएसएस को रोकने के लिए कुछ तत्वों पर यह अक्षम है।

ब्राउज़र को पुनर्निर्देशित करने में क्या गलत है? यह हर जगह काम करेगा।


यह आम तौर पर संभव नहीं है, afaik, मोज़िला पर click() विधि है लेकिन केवल इनपुट तत्वों के लिए, लिंक नहीं।

आप केवल एक फ़ंक्शन क्यों नहीं बनाते हैं जो बटन ऑनक्लिक हैंडलर पर कॉल करेगा और जब भी आप बटन को 'क्लिक' करना चाहते हैं तो फ़ंक्शन को कॉल करें?






javascript