javascript - Not binding an event to one of li items -
मेरे पास यह navbar कोड है
& lt; ul class = "left" & gt; & Lt; li & gt; & lt; a href = "#" & gt; पहला & lt; / a & gt; & lt; / li & gt; & Lt; li वर्ग = "है ड्रॉपडाउन" & gt; & Lt; a href = "#" & gt; सहायता & lt; / a & gt; & LT; ul & gt; & Lt; li & gt; & lt; a href = "#" & gt; प्रथम उप & lt; / a & gt; & lt; / li & gt; & Lt; li & gt; & lt; a href = "#" & gt; जोड़ें & lt; / a & gt; & lt; / li & gt; & Lt; / ul & gt; & Lt; / li & gt; & Lt; li & gt; & lt; a href = "#" & gt; जोड़ें & lt; / a & gt; & lt; / li & gt; & Lt; / ul & gt;
और मेरे पास मेरी जेएस फ़ाइल में यह ईवेंट हैंडलर है
$ ('ul.left li: नहीं (अंतिम बच्चा), ul.dropdown Li: नहीं (: अंतिम-बच्चा) ''। क्लिक करें (फ़ंक्शन (ई) {e.stopPropagation (); var उल = यह पृैंटनोड; उल। रिव्यू चाइल्ड (यह);});
समस्या: ul.left में जोड़ें क्लिक ईवेंट हैंडलर के लिए बाध्य नहीं है (और यह मेरे अनुरोध के अनुसार नहीं होना चाहिए) लेकिन ul.dropdown में जोड़ें क्लिक ईवेंट हैंडलर के लिए बाध्य है, हालांकि मैंने निर्दिष्ट किया है कि ली के अंतिम बच्चे को बाँध नहीं किया जाना चाहिए। इसलिए, यह पैरेंट ली आइटम को हटाना है, जो 'सहायता' है।
मुद्दा यह है कि आप डॉन आपके पास ड्रॉपडाउन
नामक एक वर्ग नहीं है हैडा ड्रॉपडाउन
ऐसा ul.dropdown li: नहीं (: अंतिम-बच्चा)
चयनकर्ता बिल्कुल भी काम नहीं करेगा आपके सबसे पहले चयनकर्ता ul.left li: नहीं (: अंतिम-बच्चा)
आपकी आंतरिक सूची में सभी ली तत्वों को कवर करेगा ताकि आपको पहले चयनकर्ता को बदलने की आवश्यकता होगी ऐसा कुछ: ul.left & gt; Li: नहीं (: आखिरी-बच्चा)
केवल ली तत्वों का चयन करने के लिए, जो कि पहली सूची के सीधे वंशज हैं।
इसलिए यदि आपका केवल आपके जेएस बदलते हैं तो आपके चयनकर्ता को निम्न में बदलें:
<पूर्व> 'ul.left & gt; Li: नहीं (: अंतिम बच्चा), ul.has- ड्रॉपडाउन & gt; Li: नहीं (: अंतिम-बच्चा) '
Comments
Post a Comment