Toon posts:

[HTML]Correct cross-browser gebruik van <object>-tag

Pagina: 1
Acties:

Verwijderd

Topicstarter
Vanwege de hele Eolas patent kwestie ben ik nu embed code voor Flash en Windows Media Player aan het herzien (moet dus voorlopig via JavaScript geplaatst worden).

Wat me opvalt is hoe slecht de huidige situatie lijkt te zijn. Het merendeel van de mensen (bloggers/forumposters) die je via Google vind raadt nog steeds aan <embed>-tags te gebruiken en verwijst voor pluginspage gerust naar versie 5.1 van Windows Media Player of naar andere niet bestaande locaties.

Fabrikanten zijn al niet veel beter. Codebase-attribuut wordt op diverse manieren gebruikt (of juist niet: Safari ziet liever pluginspage als attribuut van een <object>-tag), bepaalde browsers weigeren plotseling dienst als je een clsid-attribuut toevoegt en vaak wordt het data-attribuut ook niet ondersteund (Opera) en laten we vooral Flash ("publish movie") niet vergeten.

Alle wegen leiden uiteindelijk naar code met IE conditionals en diverse non-standaard attributen of dubbele attributen (data+src, codebase+pluginspage).

Ik hoor heel vaak CSS2/3 en ACID2 praatjes en hoe goed dat allemaal op orde is (of komt), maar rich media embedden lijkt wel een ondergeschoven kindje.

Voorbeeld, hoe ver moet je gaan om Flash volgens de standaarden te embedden: http://www.macromedia.com...articles/flash_satay.html

Ik wilde het even kwijt omdat het me veel tijd/moeite kost en misschien dat er mensen zijn met een interessante bijdrage of tips?

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Als je overigens zoekt naar eolas patent in WEB, dan krijg je een hoop topics die verwijzen naar sites die een workaround hebben bedacht voor het Eolas patent.

Ik heb ze niet allemaal bekeken, maar wellicht dat er ook nette crossbrowser varianten beschikbaar zijn :)

Laatste relevante topic: [rml][ Flash/IE] MS patent update hacks?[/rml]

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.


Verwijderd

Topicstarter
Ja, wat me dus opvalt is dat er ook dan weer veel scripts de <embed> tag gebruiken.

Maar wat ik meer bedoel is dit: Iedereen kan een link maken in html, dat is een vast omschreven element met attributen welke werken zoals het hoort in alle browsers. De object tag heeft dat niet, terwijl deze toch ook al een tijdje bestaat. Voorbeelden:
  • type-attribuut, de bedoeling is om het type data aan te geven, maar de meeste browsers gebruiken type (type="application/x-mplayer2" bijvoorbeeld) om de juiste plugin te laden.
  • classid-attribuut, zou een URI moeten zijn, maar MS gebruikt het voor de ClassId's die je in het register terug vind en welke verwijzen naar ActiveX componenten. Sommige browsers zijn heel tevreden met een object-tag, totdat je het classid-attribuut gebruikt met een ActiveX clsid.
  • pluginspage-attribuut, is geen eens een valide attribuut van de object-tag (stamt meer uit de tijd van de embed-tag), maar Safari is alleen daarmee te verleiden om bijvoorbeeld de gebruiker richting Windows Media Player download te sturen als deze niet is geinstalleerd.
  • codebase-attribuut, vormt de basis voor relatieve URI's in enkele andere attributen, maar wordt gebruikt om aan te geven waar je een plugin kunt downloaden, en welke versie vereist is. Alle voorbeelden die ik tegenkom op internet voor Windows Media Player wijzen naar een niet bestaande locatie (zelfs de code van bijvoorbeeld Channel 9, een MS site, doet dat). De codebase voor Flash werkt nog wel, maar helaas moet je twee locaties op geven, een voor de ActiveX, welke wel met versies werkt (dus als ik 8 vereis, en de gebruiker heeft dat niet, dan krijgt hij/zij een prompt) en een ander voor de browser plugins voor Mozilla/Opera, maar dat is een gewone webpagina, en geen installatie op afroep.