2013-09-02 8 views
5

के साथ तालिका से पंक्ति हटाएं मेरे पास एक सारणी है जिसमें कुछ पंक्तियां हैं, प्रत्येक पंक्ति में पृष्ठभूमि है। एक बटन है जो jQuery फीडऑट के साथ निर्दिष्ट पंक्ति को हटाता है, लेकिन ऑपरेशन के दौरान डिज़ाइन अच्छा नहीं होता है। पृष्ठभूमि पृष्ठभूमि होगी।फीडऑट प्रभाव

$(document).ready(function(){ 
    $(".btn").click(function(){ 
     $("#row").fadeOut(); 
    }); 
}); 

यह jsfiddle मेरी समस्या का बेहतर वर्णन करता है।

+0

आप पहले से ही fadeout प्रभाव मिल गया के लिए लिंक है? आपको वास्तव में क्या चाहिए? – Yasitha

+0

कृपया कॉल न करें कि पृष्ठभूमि सफेद रंग होगी और पंक्तियों के लिए मेरी पृष्ठभूमि –

+0

इस फीड के साथ टूटा हुआ प्रभाव प्रभाव से बच सकता है क्योंकि यह बैकहैंड में अस्पष्टता सेट करता है, $ ("# row") का उपयोग करें।() या $ ("# पंक्ति ")। इस समस्या से बचने के लिए छुपाएं (0) – maverickosama92

उत्तर

10

नीचे कोड एक सिकुड़ते पंक्ति को प्राप्त और फिर पृष्ठभूमि सफेद

$(document).ready(function(){ 
    $(".btn").click(function(){ 
     $("#row td").animate({'line-height':0},1000).hide(1); 
    }); 
}); 

Fiddle example

Animating लाइन ऊंचाई बदल नहीं करता है जाने बिना छिपा दिया जाएगा हालांकि वेबकिट के साथ आसानी से यह सब कुछ।

तुम भी समय को छिपाने के लिए ले जाया करने के लिए अपने पैरामीटर की स्थापना करके hide() समारोह चेतन कर सकते हैं

$(document).ready(function(){ 
    $(".btn").click(function(){ 
     $("#row").hide(1000); 
    }); 
}); 

कि हालांकि यह भी "सफेद पृष्ठभूमि समस्या" से ग्रस्त है, क्योंकि यह अस्पष्टता एनिमेट।

http://blog.slaks.net/2010/12/animating-table-rows-with-jquery.html/ से अनुकूल कम से कम क्रोम में सफेद स्थान के बिना एक अच्छा सिकुड़ने देता है और Firefox

Fiddle

$(document).ready(function() { 
    $(".btn").click(function() { 
     $('#row') 
      .children('td, th') 
      .animate({ 
      padding: 0 
     }) 
      .wrapInner('<div />') 
      .children() 
      .slideUp(function() { 
      $(this).closest('tr').remove(); 
     }); 
    }); 
}); 
+0

आपके समाधान मेरे से बेहतर हैं, लेकिन सफेद पृष्ठभूमि की समस्या मौजूद है .. –

+0

में एक और समाधान शामिल है – DGS

+0

यह समाधान बहुत मुश्किल है लेकिन अच्छा काम किया। आपके प्रयास के लिए धन्यवाद –

0

आप इस समस्या से बचने के लिए .fadeOut() के स्थान पर .hide() का उपयोग कर सकते हैं।

$(document).ready(function(){ 
    $(".btn").click(function(){ 
     $("#row").hide(); 
    }); 
}); 

यहाँ अद्यतन किया जाता है jsFiddle File

+0

धन्यवाद, यह काम किया, लेकिन मुझे एनीमेशन प्रभाव की आवश्यकता है। –

10

इस प्रयास करें: यहाँ

$(document).ready(function(){ 
    $(".btn").click(function(){ 
     $("#row").fadeTo("slow",0.7, function(){ 
      $(this).remove(); 
     }) 
    }); 
}); 

काम कर बेला: http://jsfiddle.net/wnKXP/4/

आप "0.7"

में अस्पष्टता सेट कर सकते हैं, मुझे उम्मीद है कि इससे मदद मिलती है।

1

बस अपनी तालिका में एक ही पृष्ठभूमि जोड़ें जिसे आपने टेबल पंक्ति के लिए आवेदन किया था, फिर आपको पंक्तियों के लिए कोई पृष्ठभूमि दिखाई नहीं देगी।

$(document).ready(function(){ 
    $(".remove").click(function(){ 
    $(this).parents("tr").fadeOut(); 
    }); 
}); 

यहाँ jsFiddle

+0

अच्छा है, लेकिन विभिन्न पंक्ति रंगों के बारे में क्या?मुझे लगता है कि टी पर पृष्ठभूमि टीडी फीका है और अंत में tr को हटाने से पहले tr को स्लाइड करें, या यह बहुत अधिक होगा? – Chris

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