2017-05-25 14 views
5

मैं jQuery का उपयोग करके div की सामग्री को क्लोन करना चाहता हूं, लेकिन कॉपी की गई सामग्री से मैं ऐपेंड टू फ़ंक्शन का उपयोग करने से पहले मूल से कक्षा को हटाना चाहता हूं। जब मैं क्लोन से कक्षा को हटा देता हूं तो वे मूल से भी हटा देते हैं।क्लोन div और मूल को बदलने के बिना क्लास को हटाएं

मेरे कोड है:

$('.carousel .item').each(function(){ 
     var next = $(this).next(); 

     if (!next.length) { 
      next = $(this).siblings(':first'); 
     } 
     next.children(':first-child').clone().appendTo($(this)); 
     next.children(':first-child').addClass('col-sm-offset-1'); 

     for (var i=0;i<3;i++) { 
      next=next.next(); 
      if (!next.length) { 
       next = $(this).siblings(':first'); 
      } 
      next.children(':first-child').clone().appendTo($(this));     
     } 

}); 

कृपया ध्यान दें, मैं जहाँ मैं सामग्री की नकल की वास्तविक div से वर्ग को दूर नहीं करना चाहते हैं, मैं सिर्फ कॉपी किया कोड से निकालने के लिए चाहते हैं, ताकि यह है क्लोन div में शामिल नहीं है।

+0

मैं वर्ग दूर करने के लिए कोड नहीं दिख रहा है, तो आप निकालें वर्ग है, जहां आप वर्ग – LazyDeveloper

+0

next.children दूर करने के लिए कोशिश कर रहे हैं के साथ अपना कोड अपडेट कर सकते हैं (': पहले बच्चे')। RemoveClass ('सहयोगियों SM-ऑफसेट -1 ') क्लोन)।() appendTo ($ (इस।); // यहां मैं क्लोन डिवी क्लास – suraj

उत्तर

0

आप पहली क्लोन वस्तु से तत्व को हटा सकते हैं और फिर अपना नया वस्तु जो कुछ होगा क्लोन नीचे दिखाया गया है जैसे:

$('.carousel .item').each(function(){ var next = $(this).next();  
     if (!next.length) { 
      next = $(this).siblings(':first'); 
     } 
     var $block = next.children(':first-child'); 

     // Grab the and remove element class 
     $block = $block.find('.your-element-identity-class').removeClass('your-element-identity-class'); 

     // Clone the block 
     var $clone = $block.clone(); 

     $clone.appendTo($(this)); 
     next.children(':first-child').addClass('col-sm-offset-1'); 

     for (var i=0;i<3;i++) { 
      next=next.next(); 
      if (!next.length) { 
       next = $(this).siblings(':first'); 
      } 
      var $block = next.children(':first-child'); 

      // Grab the and remove element class 
      $block = $block.find('.your-element-identity-class').removeClass('your-element-identity-class'); 

      // Clone the block 
      var $clone = $block.clone(); 

      $clone.appendTo($(this));     
     } 

    }); 

बदलें "अपने-तत्व-पहचान-क्लास" अपने वर्ग के नाम आप चाहते हैं के साथ हटाना। मूल रेफरी। से - How to remove the selected element during a clone() operation

0

आप इसे जोड़ने से पहले ऑब्जेक्ट पर removeClass() चलाने में सक्षम होना चाहिए, भले ही आप इसे कहां जोड़ना चाहते हैं।

+0

अगली .children (': first-child') हटा देता हूं। removeClass ('col-sm-offset-1') .clone()। appendTo ($ (this)) ; मैं इसका उपयोग करता हूं लेकिन मूल div से इसकी रीमेप भी – suraj

3

आप clone इस तरह के बाद removeClass और addClass उपयोग कर सकते हैं।

.clone().removeClass('oldClass').addClass('col-sm-offset-1') 
+0

@ सूरज क्लोन के बाद कक्षा को हटा देता है। –

+0

धन्यवाद एक स्वर सर – suraj

+0

यदि उत्तर आपकी समस्या का समाधान करते हैं तो कृपया इसे स्वीकार करें। –

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