jQuery -prototype संघर्ष

वोट
1

मैं प्रोटोटाइप और script.aculo.us का एक संयोजन का उपयोग कर रहा मेरी asp.net page.I में एक लाइटबॉक्स प्रभाव लागू करने के लिए भी jQuery मेरी page.I में शामिल किया है मेरा पेज में कई DIV टैग नहीं है, लेकिन में प्रोटोटाइप फ़ाइल को जोड़ने के बाद पेज के मेरे सिर, मैं अपने jQuery जावास्क्रिप्ट का उपयोग करने में divs को पढ़ने में सक्षम नहीं कर रहा हूँ

var div = $(#divLeftSideModelsList); 
alert(div)

मुझे कह रही है कि वस्तु रिक्त है एक त्रुटि देता है लेकिन

var div = document.getElementById(divLeftSideModelsList)

मुझे वस्तु दे रही है।

इस वजह से वहाँ jQuery और अन्य चौखटे के बीच कुछ मतभेद है?

कृपया सलाह दें

09/06/2009 को 15:21
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


4 जवाब

वोट
-2

इस कोड काम करता है:

var div = jQuery("#divLeftSideModelsList");
alert(div);
09/06/2009 को 15:24
का स्रोत उपयोगकर्ता

वोट
6

इस का एक पढ़ा है: http://docs.jquery.com/Using_jQuery_with_Other_Libraries

अच्छे उदाहरण दिखाता है :)

अधिभावी $ समारोह

हालांकि, अगर आप किसी भी बिंदु पर jQuery.noConflict () कॉल के बाद jQuery और अन्य पुस्तकालय दोनों लोड द्वारा कि डिफ़ॉल्ट ओवरराइड कर सकते हैं। उदाहरण के लिए:

 <html>
 <head>
   <script src="prototype.js"></script>
   <script src="jquery.js"></script>
   <script>
     jQuery.noConflict();

     // Use jQuery via jQuery(...)
     jQuery(document).ready(function(){
       jQuery("div").hide();
     });

     // Use Prototype with $(...), etc.
     $('someid').hide();
   </script>
 </head>
 <body></body>
 </html>

यह $ वापस अपने मूल पुस्तकालय पर लौट जाएगा। तुम अब भी "jQuery" का उपयोग करने के लिए अपने आवेदन के बाकी हिस्सों में सक्षम हो जाएगा।

इसके अतिरिक्त, एक और विकल्प है। आप यह सुनिश्चित करें कि jQuery एक और पुस्तकालय के साथ संघर्ष नहीं होगा बनाना चाहते हैं - लेकिन आप एक संक्षिप्त नाम के लाभ चाहते हैं, आप कुछ इस तरह कर सकता है:

 <html>
 <head>
   <script src="prototype.js"></script>
   <script src="jquery.js"></script>
   <script>
     var $j = jQuery.noConflict();

     // Use jQuery via $j(...)
     $j(document).ready(function(){
       $j("div").hide();
     });

     // Use Prototype with $(...), etc.
     $('someid').hide();
   </script>
 </head>
 <body></body>
 </html>
09/06/2009 को 15:27
का स्रोत उपयोगकर्ता

वोट
2

आप में jQuery का उपयोग करना चाहिए noConflict मोड । और फिर उपयोग करने jQuery()के बजाय $()

09/06/2009 को 15:28
का स्रोत उपयोगकर्ता

वोट
0

अजीब बग। वैसे भी, दोनों प्रोटोटाइप और jQuery वैश्विक चर $ को फिर से परिभाषित।

कृपया पढ़ें इस पता है कि कैसे jQuery अन्य पुस्तकालयों के साथ अच्छा खेल सकते हैं।

यह मूल रूप से कहा गया है कि jQuery.noConflict बुला () $ चर छोड़ देता है अकेले अन्य libs का उपयोग करने के लिए

09/06/2009 को 15:28
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more