Toon posts:

[JS] setAttribute workaround werkt niet voor IE7

Pagina: 1
Acties:

Acties:
  • 0Henk 'm!

  • Jiggle
  • Registratie: December 2007
  • Laatst online: 22-03-2021
Ik wil mbv Javascript de class van een element in mijn website wijzigen. Ik had al begrepen dat ik hier IE-issues mee krijg, maar de workaround die ik voor IE7 dacht te hebben werkt op de een of andere manier niet.

code:
1
2
3
4
5
6
7
8
9
function changeclassNetto(id) {
    
dataObj = document.getElementById(id);

if ( dataObj.className == 'weergave_bruto')
{
  dataObj.setAttribute('className', 'weergave_netto');
}
}


Hoe krijg ik dit werkend in IE7?

Acties:
  • 0Henk 'm!

Anoniem: 187672

Wat werkt er dan nu precies niet?
Zou je die javascript kunnen debuggen en bijvoorbeeld kijken of hij dat if-statement wel ingaat .

edit: moet het geen "class" zijn ipv "className"?

[Voor 16% gewijzigd door Anoniem: 187672 op 09-05-2011 13:09]


Acties:
  • 0Henk 'm!

  • Jiggle
  • Registratie: December 2007
  • Laatst online: 22-03-2021
De gewijzigde CSS wordt niet 'gebruikt', zie ik nu.

Door een alert toe te voegen zie ik dat:
- het if-statement ingaat
- de klasse zelfs verandert wordt!

Alleen ik zie er vervolgens geen effect van. Hoe vaag?!

Acties:
  • 0Henk 'm!

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 00:50

crisp

Devver

Pixelated

Gewoon geen setAttribute gebruiken:
if ( dataObj.className == 'weergave_bruto')
{
dataObj.className = 'weergave_netto';
}

Intentionally left blank


Acties:
  • 0Henk 'm!

  • Jiggle
  • Registratie: December 2007
  • Laatst online: 22-03-2021
Maar dit werkt ook niet in IE7.
Het probleem lijkt niet in setAttribute te zitten, want de klasse verandert gewoon.
Het probleem is dat dit hier in IE7 vervolgens geen gevolg aan gegeven wordt. Ik snap echt niet hoe dat kan.

Acties:
  • 0Henk 'm!

  • Flowmo
  • Registratie: November 2002
  • Laatst online: 26-05 23:05
als de classname door de JS ge-set wordt (en je dit kan verifieren met een get) en dit werkt, dan schort er of iets aan de class die je meegeeft in de JS of in je CSS zelf. Dit zou namelijk gewoon moeten werken.

Acties:
  • 0Henk 'm!

  • Jiggle
  • Registratie: December 2007
  • Laatst online: 22-03-2021
Klopt.

Ik wil met deze functie een kolom in een tabel visible of invisible maken. De klasse togglet daarom van display:none naar display:inline. De functie werkt dus twee kanten op (iets uitgebreider dan bovenstaand dus)

Het vreemde is nu:
- Als ik met display:none begin, dan werkt het niet.
- Als ik met display:inline begin, dan werkt het wel. Heen en weer.

Vaag, hoe kan dat?!

Acties:
  • 0Henk 'm!

  • Jiggle
  • Registratie: December 2007
  • Laatst online: 22-03-2021
Opgelost.
Ik wilde een td-element uit een tabel invisible maken. Dat bleek te moeilijk voor IE7. Heb nu de tekst in dat element in een span gezet en daar de klasse in gezet die moet toggelen. Dat werkt wel.

Senks!
Pagina: 1


Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee