Toon posts:

[CSS/javascript] -moz-border-radius detecteren

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik probeer een non-intrusive manier te bedenken voor het maken van ronde hoekjes rondom divs. (Ik weet dat hier al wel een paar honderd oplossingen voor zijn; ik doe het vooral voor m'n lol.)

Nu lijkt het me handig om het script dat ik hiervoor heb, niet los te laten op mozilla-browsers, omdat die met -moz-border-radius hun eigen css hiervoor hebben. Vraag is nu: hoe detecteer ik, of de browser -moz-border-radius ondersteunt?

Van Quirksmode heb ik geleerd dat je geen browser-detectie, maar object-detectie toe moet passen. Maar het volgende geeft (in FF) "Geen Mozilla".

JavaScript:
1
2
3
if(document.getElementById("test").style.mozborderradius==undefined){
    alert("Geen Mozilla");
}


Iemand een idee wat ik fout doe?

edit:

Stom, hoofdletters natuurlijk |:(


JavaScript:
1
2
3
if(document.getElementById("test").style.MozBorderRadius==undefined){
    alert("Geen Mozilla");
}

[ Voor 12% gewijzigd door Verwijderd op 27-06-2007 12:48 ]


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Omdat je nu geen object detectie doet, maar een property opvraagt van style :)

Doe eens
JavaScript:
1
2
3
4
alert(document.getElementById("test").style.MozBorderRadius);
of 
alert(typeOf(document.getElementById("test").style.MozBorderRadius));
}

[ Voor 3% gewijzigd door BtM909 op 27-06-2007 12:50 ]

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 23:10

TeeDee

CQB 241

JavaScript:
1
2
3
if(document.getElementById("test").style.MozBorderRadius==undefined){
    alert("Geen Mozilla");
}


edit:
hmm, het hoofdletter gedoe er gauw bijzetten he ;)

[ Voor 20% gewijzigd door TeeDee op 27-06-2007 12:51 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

TeeDee schreef op woensdag 27 juni 2007 @ 12:51:
JavaScript:
1
2
3
if(document.getElementById("test").style.MozBorderRadius==undefined){
    alert("Geen Mozilla");
}


edit:
hmm, het hoofdletter gedoe er gauw bijzetten he ;)
Je kan niks met "undefined" vergelijken op deze manier. Dat moet je doen met 'typeof'

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 23:10

TeeDee

CQB 241

Erkens schreef op woensdag 27 juni 2007 @ 12:52:
[...]

Je kan niks met "undefined" vergelijken op deze manier. Dat moet je doen met 'typeof'
JavaScript:
1
2
3
4
5
6
7
8
9
10
    function test()
    {
            if(document.getElementById("test").style.MozBorderRadius==undefined)
            {
                alert("Geen Mozilla");
            }
            else {
                alert('moz');
            }
    }

Vreemd, met bovenstaande functie krijg ik toch echt bij IE 'Geen Mozilla' en bij FireFox 'moz' te zien.

Edit:
Even typeof gebruikt. In FireFox wordt dit 'string' en in IE 'undefined'. Misschien wordt dit automatisch gecast?

[ Voor 10% gewijzigd door TeeDee op 27-06-2007 12:57 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


Verwijderd

Topicstarter
TeeDee schreef op woensdag 27 juni 2007 @ 12:51:
hmm, het hoofdletter gedoe er gauw bijzetten he ;)
Ik ben een boefje :+

Zonder gekheid: het schoot me meteen daarna te binnen. Ik had 'm nog wel kunnen/willen wissen, maar zo heeft iemand anders er misschien nog iets aan...

  • Zr40
  • Registratie: Juli 2000
  • Niet online

Zr40

Moderator General Chat

heeft native IPv6

Correct me if I'm wrong, maar Mozilla detecteren is niet nodig. Als je MozBorderRadius gaat setten op een andere browser, wordt die property gewoon aangemaakt, waarbij verder niets gebeurt.
...of ik lees de topicstart even. |:(

[ Voor 10% gewijzigd door Zr40 op 27-06-2007 12:59 ]

Pagina: 1