Avatar billede stringbuffer Nybegynder
06. maj 2002 - 17:30 Der er 6 kommentarer og
1 løsning

scripting af <object> i NN6

Jeg har en applet som kalder javascript inde i HTML-siden gennem JSObject. Det virker fint i både Netscape 6.2 og Internet Explorer 5 (sandsynligvis også andre version 5 browsere fra MS og Netscape) når jeg bruger følgende tag:
    <applet id="client" code="Client.class" codebase="http://10.1.18.63/zhat/client/" mayscript="mayscript" style="width:0;height:0;">
        <param name="port" value="5190" />
        <param name="userid" value="cgkkkekhiflfffjp" />
    </applet>

Problemet er at w3c's HTML validator ikke vil godtage <applet> i XHTML 1.0 Strict og tillader endda heller ikke noget attribut med navnet mayscript (heller ikke i HTML 4.01)

Følgende tag er lavet efter principperne fra http://java.sun.com/products/plugin/1.2/docs/jsobject.html
    <object id="client" classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" style="width:0;height:0"
        codebase="http://java.sun.com/products/plugin/1.2/jinstall-12-win.cab#Version=1,2,0,0">
        <param name="type" value="application/x-java-applet" />
        <param name="code" value="Client.class" />
        <param name="codebase" value="http://10.1.18.63/zhat/client/" />
        <param name="MAYSCRIPT" value="true" />
        <param name="port" value="5190" />
        <param name="userid" value="cgkkkekhiflfffjp" />
    </object>
Dette tag virker fint i Internet Explorer og består w3c's validering, men i Netscape kommer der en Java exception, der ligner den man får hvis man ikke sætter MAYSCRIPT-attributtet.

Hvad er fejlen i mit tag og hvordan får jeg den til at virke i både Netscape og Internet Explorer?
Avatar billede stringbuffer Nybegynder
06. maj 2002 - 17:32 #1
...og stadig være gyldig XHTML 1.0 Strict?
Avatar billede stringbuffer Nybegynder
24. november 2002 - 13:23 #2
Det kan ikke lade sig gøre, for Nutscape fortsætter med at undgå overholdelse af standarder.
Avatar billede stringbuffer Nybegynder
24. november 2002 - 13:23 #3
lortebråwser.... døøøø
Avatar billede tobiashm Nybegynder
26. juni 2003 - 14:50 #4
Ved godt det er et gammelt spørgsmål, men jeg må bare lige svare:
Det er IE der har fundet på sin egen standard for attribute-værdier i object-tag'et, sådan at classid referere til en post i windows registrering-database og codebase ikke henviser til det sted koden ligger - dette kan andre browsere selvfølgelig ikke fortolke - formentlig heller ikke engang IE/Mac!
Altså: et IE 'problem' - hvis du skriver dit object element på en mere fornuftig måde, virker det fint i NN6/Mozilla/andre
Avatar billede stringbuffer Nybegynder
26. juni 2003 - 17:12 #5
Det er skam helt fedt at du svarer, spørgsmål bliver jo aldrig for gamle før der er et svar :)
Kan du uddybe hvad "fornuftig måde" ville være i dette her tilfælde?
Avatar billede tobiashm Nybegynder
30. juni 2003 - 01:34 #6
Først og fremmest skal codebase angive det sted hvor data befinder sig (hvis attributen benyttes). Lige som den også gør i bl.a. det gamle applet tag.

"codebase = uri [CT]
    This attribute specifies the base path used to resolve relative URIs specified by the classid, data, and archive attributes. When absent, its default value is the base URI of the current document."

Og så er det upratisk at bruge en platformsafhængig implementering ved at lade  classid="..." pege på Windows registreringsdatabase.

De her side virker bl.a. i Mozilla/NN6+/etc. og Opera, men desvære ikke i IE/Win (har ikke prøvet på Mac):
http://thm.1go.dk/test/object-tag-test.html
http://thm.1go.dk/test/object-tag-test2.html

Desvære er w3c's spec for html4 object tag [
http://www.w3.org/TR/html401/struct/objects.html#edef-OBJECT ]
ikke så udførlig mht. specifikke data typer som f.eks. java, men det er blevet lidt bedre i xhtml2 [ http://www.w3.org/TR/xhtml2/mod-object.html#s_objectmodule ] -- men der går desvære nok en rum tid før den standard trænger igennem ;-)

Til sidst kan man udnytte at hvis browseren ikke kan fortolke et object tag, vil den (normalt*) forsøge at fortolke et nested tag - f.eks. et andet object tag med andre attributer.
(*: Her har IE/Win dog også et underligt problem: http://ww2.cs.fsu.edu/~steele/XHTML/appletObject.html )
Avatar billede stringbuffer Nybegynder
30. juni 2003 - 14:46 #7
Takker :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester