प्रोटोटाइप करने के लिए jQuery या डोजो से कोड परिवर्तित

वोट
1

यह करने के लिए यदि आप था ...

function addRemoveItemNS() {
  var $newLi = $('<li class=special>special and new <button class=addone>I am new</button> <button class=removeme>remove me</button></li>');
$('#list9 li.special')
  .find('button.addone')
 .unbind('click.addit')
 .bind('click.addit', function() {
   $(this).parent().after($newLi);
   addRemoveItemNS();
  })
  .end()
  .find('button.removeme')
  .unbind('click.removeit')
  .bind('click.removeit', function() {
 $(this).parent().remove();
  });
}
$(document).ready(function() {
  addRemoveItemNS();
});

... के साथ प्रोटोटाइप या jQuery के बजाय डोजो, आप इसे कैसे करना चाहते हैं?

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


2 जवाब

वोट
0

ठीक है, क्योंकि वहाँ अपने कोड ... या AJAX में कोई घटनाओं रहे हैं।

बस एक मिथ्या नाम पर एक मूर्खतापूर्ण अनुरोध।

25/06/2009 को 03:30
का स्रोत उपयोगकर्ता

वोट
4

यहाँ आप यह कैसे डोजो ट्रंक कोड का उपयोग कर सकता है (या 1.4 डोजो एक बार इसे जारी किया जाता है)। ट्रंक कोड अंत () अपने मूल कोड बेहतर मिलान करने के लिए के लिए समर्थन जोड़ता। आपको लगता है कि चारों ओर एक चर के रूप में dojo.query (डाला) की बचत और बस .query बुला () दो अलग-अलग बयानों में एक ही प्रभाव प्राप्त करने के लिए मिल सकता है, और फिर आप डोजो 1.3 इस्तेमाल कर सकते हैं।

function addRemoveItemNS() {
  var html = '<li class="special">special and new <button class="addone">I am new</button> <button class="removeme">remove me</button></li>';
  var inserted = dojo.place(html, "list9");
  dojo.query(inserted)
    .query('button.addone')
      .onclick(function(evt){
        addRemoveItemNS()
      })
    .end()
    .query('button.removeme')
      .onclick(function(evt){
        //Use normal DOM API for parentNode to get reference.
        dojo.destroy(evt.target.parentNode);
      });
}

dojo.addOnLoad(function(){
  //First create #list9 node? Missing from original code.
  dojo.place('<ul id="list9"></ul>', dojo.body());
  addRemoveItemNS();
});

कोड के बारे में कुछ नोट:

  • एक HTML स्ट्रिंग का उपयोग, और फिर इसे dojo.placing करके, फिर वहाँ एक "अनबाइंड" के लिए कॉल करने के लिए कोई जरूरत नहीं है।
  • डोजो डोम नोड्स पर घटनाओं, सिर्फ मानक डोम ईवेंट के नाम onclick की तरह, onFocus, आदि के लिए बाध्य के लिए कस्टम नाम का समर्थन नहीं करता .. समर्थित हैं।
  • डोजो डिफ़ॉल्ट रूप से, डोम नोड कि क्लिक संचालकों में "इस" संदर्भ क्लिक किया गया था नहीं है के बाद से डोजो उनके onclick समारोह के हिस्से के रूप में एक "यह" तर्क का समर्थन करता है। यही कारण है कि evt.target निकालें बटन पर क्लिक कार्रवाई में प्रयोग किया जाता है।
27/06/2009 को 04:32
का स्रोत उपयोगकर्ता

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