2011-01-05 21 views
17

क्यों काम नहीं कर पीछा कर रहा है?उत्प्रेरक घटनाओं

+0

आईफ्रेम पैरेंट विंडो में ट्रिगर क्लिक ईवेंट का संभावित डुप्लिकेट] (http://stackoverflow.com/questions/3521947/trigger-click-event-in-iframe-parent-window) –

उत्तर

36

जिस तरह से ईवेंट ट्रैक किए जाते हैं, आप केवल उसी दस्तावेज़ पर ईवेंट को ट्रिगर या प्राप्त कर सकते हैं।

तो iframe से एक नियमित रूप से समारोह के रूप में यह बुला, कोशिश

window.parent.$(window.parent.document).trigger('complete'); 
+0

मुझे अनिवार्य रूप से एक ही समस्या है YUI3, कोई सुझाव? – danjah

+0

@ डांजा मैंने पहले कभी वास्तव में यूयूआई का उपयोग नहीं किया है, इसलिए मुझे यकीन नहीं है कि मैं मदद कर सकता हूं। हालांकि, यह पूरी तरह से संभव है कि एक समान दृष्टिकोण का उपयोग किया जा सकता है: window.parent.YUI.use ('नोड-इवेंट-सिमुलेट', फ़ंक्शन (वाई) {वाई.ऑन (window.parent.document) .simulate ('क्लिक करें ');}); हालांकि, आप अपने आईफ्रेम, एला @ केन रेडलर के सुझाव के नीचे आवश्यक ट्रिगरिंग करने के लिए माता-पिता पर एक विधि का पर्दाफाश करना चाह सकते हैं। – HackedByChinese

+0

ठीक है, बहुत बहुत धन्यवाद - मैं निश्चित रूप से उस बाश को दूंगा, मैं मौजूदा हैंडलर को ट्रिगर करने की कोशिश करने से पहले घटनाओं को अनुकरण शुरू करने के लिए थोड़ा सावधान था ... लेकिन मुझे करना पड़ सकता है। – danjah

10

आप मूल दस्तावेज़ में एक ट्रिगर समारोह जोड़कर भी देख सकते। यह सुनिश्चित करना चाहिए कि आप सही दस्तावेज़ संदर्भ में ईवेंट को ट्रिगर कर रहे हैं।

// In Parent 
function triggerComplete() { 
    $(document).trigger('complete'); 
} 

// In iFrame 
window.parent.triggerComplete(); 
-5

जांच इस समाधान, इसकी बहुत मुश्किल

top.frames [ 'frame_name'] document.getElementById ('संसाधित') style.display = 'कोई नहीं'।।

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