2017-12-18 2 views
2

Meine Anwendung generiert einige Inline-Stile. In bestimmten Punkt muss ich die height, die width und die max-width Stile entfernen.So entfernen Sie mehrere CSS-Stile aus einem element.style

Ich habe das Element wie folgt zu finden:

const elems = window.$('.myElements'); 
    window.$.each(elems, (index, value) => { 
     if (value.id.startsWith('myPanel')) { 

hier ich das versucht habe:

  window.$(value).css({height: '', maxWidth: '', width: ''}); 

und diese:

  window.$(value)[0].style.height = ''; 
     window.$(value)[0].style.width = ''; 
     window.$(value)[0].style.maxWidth = ''; 

auch dies:

  window.$(value).css('height', '');    
     window.$(value).css('max-width', ''); 
     window.$(value).css('width', ''); 
     } 
    }); 

und egal was es immer nur das erste Element entfernen. Was fehlt mir hier?

+0

Sie sind also die const Einstellung elems aber dann mit Bezug auf sie als elementos? Und warum würdest du nicht einfach 'elems.each (function() {...});' – Snowmonkey

+0

@Snowmonkey, jetzt behoben, verwende ich Kennungen in Spanisch, sorry – assembler

Antwort

3

Sie eine beginnt mit Wahl verwenden können, zu tun, keine Notwendigkeit, die Schleife

$('div[id^="myPanel"]').each(function() { 
 

 
    $(this).css({ 
 
     height: Math.floor(Math.random()*200) + "px", 
 
     width: Math.floor(Math.random()*200) + "px" 
 
    }); 
 
    }) 
 

 
window.setTimeout(function() { 
 
    $('div[id^="myPanel"]').css({ 
 
    height: '', 
 
    maxWidth: '', 
 
    width: '' 
 
    });} 
 
, 1000);
div { 
 
    background-color: green; 
 
    margin: 1em; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="myPanel1" style="width:20px; height: 20px;">A</div> 
 
<div id="myPanel2" style="width:20px; height: 20px;">B</div> 
 
<div id="myPanel3" style="width:20px; height: 20px;">C</div> 
 
<div id="myPanel4" style="width:20px; height: 20px;">D</div>

+0

Ihre Lösung vereinfacht meinen Code, aber immer noch nur entfernt das erste Element. – assembler

+0

Dann muss ich etwas Markup sehen, da es eindeutig oben funktioniert. Du hast etwas anderes. Was ist der HTML-Code der Elemente, die Sie entfernen? – epascarello

+0

Meine Stile werden generiert ... Wenn ich den Stil in den Elementen des Browsers finde und ihn manuell entferne, dann funktioniert es – assembler

Verwandte Themen