08. maj 2003 - 11:16Der er
90 kommentarer og 1 løsning
versionen af browseren
Jeg har et problem med afvikling af noget javascript i Mozilla 1.1-1.2. Derfor skal jeg have noget som findet ud af om det er Mozilla, versionen 1.3 eller højere samt IE6.0 eller højere
Scriptet må IKKE afvikles ved alle andre browsere end de 2 nævnte. IE fra version 6.0 og højere. Mozilla fra version 1.3 og højere.
<script language="JavaScript1.2"> function performTest( ) { var jsresult = document.browsertest.javascript.value; document.browsertest.javascript.value = ""; document.browsertest.cookies.value = ""; document.browsertest.version.value = ""; alert("The browser test is complete.\nClick OK to view the results."); document.browsertest.javascript.value = jsresult; document.browsertest.cookies.value = cookiesEnabled(); document.browsertest.version.value = isSupportedBrowser(); //document.browsertest.css.value = cssEnabled( ); }
function cookiesEnabled( ) { document.cookie = "test=cookiesEnabled"; var pos = document.cookie.indexOf( "test=" ); if( pos == -1 ) { alert( "Please enable cookies and then press Reload to try again." ); return "Failed"; } return "Passed"; }
function cssEnabled( ) { if( "" + document.layers["cssTest"] == "undefined" ) { alert( "Please enable style sheets and then press Reload to try again." ); return "Failed"; } else return "Passed"; }
function isSupportedBrowser() { if (OS == "macppc") { if (MSIE50()) { alert("IE 5.0 and earlier versons on the Mac are very buggy and freeze. We recommend IE 5.1 or later."); return "Failed"; } return "Passed"; }
if ( isMSIE() && isMSIE4Min() ) return "Passed";
if ( isNav() && isNav4_07Min() ) return "Passed";
alert("Your browser is NOT currently supported by DanceSpots Network!!!"); return "Failed"; }
function isMSIE() { return (navigator.appName == "Microsoft Internet Explorer"); }
function isMSIE4Min() { return (version >= 4.0); }
function MSIE50() { return (version <= 5.0); }
function isNav() { return (navigator.appName == "Netscape"); }
function isNav4_07Min() { return (version >= 4.07); }
lang = "un"; Component = "Unknown browser"; platform = "Unknown platform"; OS = ""; version = parseFloat(navigator.appVersion); UA = navigator.userAgent; ua = navigator.userAgent.toLowerCase();
// Language if (((start = ua.indexOf("[")) > 0) && ((end = ua.indexOf("]")) == (ua.indexOf("[") + 3))){ language = ua.substring(start+1, end); } else if (navigator.language) { language = navigator.language.toLowerCase(); } else if (navigator.userLanguage) { language = navigator.userLanguage.toLowerCase(); } if (languagesq[language]) { lang = language; }
// OS if (((ua.indexOf("ppc") > 0) && (ua.indexOf("mac") > 0)) || (ua.indexOf("mac_power") > 0)) { // if (ua.indexOf("os x")) { // OS = "macosx"; // } else { OS = "macppc"; // } } else if ((ua.indexOf("linux 2.2") > 0) || (ua.indexOf("netscape6") && ua.indexOf("linux") > 0)) { OS = "linux2.2"; } else if (ua.indexOf("win") > 0) { OS = "win32"; }
// Other info start = UA.indexOf('(') + 1; end = UA.indexOf(')'); str = UA.substring(start, end); info = str.split('; ');
Det er generelt en meget dårlig idé at prøve at sniffe browsere. Browserens idenditet er defineret af en streng, men denne kan (og er ofte) overskrives. Mange bundlede browsere bevarer det meste af den originale streng og nøjes med at sætte et stykke bagefter (så som " - HP Desktop 433X") men andre kan sagtens have overskrevet det fuldstændigt. Det er bedre at teste om det du vil bruge er understøttet hvor det bruges og kaste en undtagelse. function doThat(xmlDoc) { if (window.XMLDocument) { XMLDocument.defineGetter("xml", function(){return new XMLSerializer(this);}); return xmlDoc.xml; } else if (window.ActiveXObject) { return xmlDoc.xml; } else throw new Error("XML not supported"); }
under brug try { doThat(xml); } catch(e) { //reagér på at det ikke er understøttet }
koden er ikke aktuel eller funktionel (skulle nogen undre), men bare tænkt som eksempel.
Jeg har det problem at koden måske er for dårlig. Det kan da godt være det er problemet. Et andet problem er hvis man bruger noget der ikke er standard i Javascript.
Men det ville lette meget hvis jeg kunne nøjes en kode der fylder mindre. Jeg har ikke brug for at tjekke cookies og alt muligt andet.
Hehe ... selvfølgelig kan du hverken bruge den kode jeg og =maddog= skrev. Det var heller ikke meningen. Som =maddog= skrev: Det er kun et eksempel. Naturligvis skal det rettes til efter, hvad du skriver i din kode - men den kender vi jo ikke. Derfor kan kun du vide, hvad der skal skrives :) /mvh
Koden ser sådan ud. Virker kun i IE6.0 og Mozilla 1.3
function insertIcon(icon){ var input = document.forum.comments;
if (input.setSelectionRange) { var selectionStart = input.selectionStart; var selectionEnd = input.selectionEnd; input.value = input.value.substring(0, selectionStart) + " " + icon + " " + input.value.substring(selectionEnd); input.setSelectionRange(selectionStart + text.length, selectionStart + text.length); input.focus(); } else if (document.selection) { var range = document.selection.createRange(); if (range.parentElement() == input) range.text = " " + icon + " "; } input.focus(); }
Jeg har en side der har nogle kald af functionen. Det skal kun være muligt i IE6.0 og Mozilla 1.3
Noget andet er en textscroller lavet i DHTML. Muligvis er koden for dårlig. Problemet er at scrolleren gør at siden "hopper" hele tiden i Mozilla version 1.1 og muligvis 1.2 som det er testet i. I Mozilla 1.3 og IE 6.0 fungerer det meget fint.
Jeg kunne måske finde en anden bedre kode, hvis det er de der er galt, men så vil jeg hellere slå det fra denne her gang. Også måske forbedre det an anden gang.
function insertIcon(icon){ var input = document.forum.comments;
if (input.setSelectionRange) { var selectionStart = input.selectionStart; var selectionEnd = input.selectionEnd; input.value = input.value.substring(0, selectionStart) + " " + icon + " " + input.value.substring(selectionEnd); input.setSelectionRange(selectionStart + text.length, selectionStart + text.length); input.focus(); } else if (document.selection) { var range = document.selection.createRange(); if (range.parentElement() == input) range.text = " " + icon + " "; input.focus(); } else throw new Error("Cannot create selection"); }
under brug try { insertIcon("img/smiley.gif"); } catch(e) { alert("Denne funtion er ikke understøttet"); } på den måde fejler gamle browsere også "rent", d.v.s. du har kontrol over hvordan scriptet skal reagere hvis det ikke dur. Desuden er det lavere i vedligehold på sigt. Hvis den næste version af Mozilla understøtter en af de to standarder vil scriptet automatisk komme til at virke.
du lytter ikke efter. jeg siger jo at du ikke skal lave den slags i funktionen. Der smider du en undtagelse med throw new Error(message); denne griber du hver gang du anvender funktionen try { myFunction(); } catch(e) { // din kode her. document.write kan ikke anbefales. }
helst. ; betyder at du afslutter et udtryk. det er ikke nødvendigt, men parseren får nemmere arbejde hvis den ikke skal "gætte" alt for meget. Bemærk at en condition ikke skal afsluttes med ; if (boolean==true); oversættes som if (boolean==true) { void(0); }
Jeg har lige et spm om document.write() Kan jeg nøjes med at skrive document.write( en enkelt gang og så lave linejskift indtil jeg afslutter til sidst i koden. Jeg skal jo får javascriptet til at vise et helt table.
Mit andet problem er at ved ældre versioner af Mozilla. -D.v.s. op til 1.3. scroller hele siden og ikke bare textscrolleren. Siden "hopper" Er det så Mozilla 1.3 eller IE. 6.0 man sidder med fungerer den fint. Kan du også hjælpe mig med det. Jeg giver dig gerne point.
var scroller_width='300px' var scroller_height='15px' var bgcolor='#efefef' var font_color='#aa0000' var font_weight='bold' var font_size='12px' var font_family='Tahoma, Arial'
var pause=3000 //SET PAUSE BETWEEN SLIDE (3000=3 seconds)
var scrollercontent=new Array() //Define scroller contents. Extend or contract array as needed scrollercontent[0]='test'; scrollercontent[1]='test'; ////NO need to edit beyond here/////////////
var ie4=document.all var dom=document.getElementById&&navigator.userAgent.indexOf("Opera")==-1
var curpos=scroller_height*(1) var degree=3 var curcanvas="canvas0" var curindex=0 var nextindex=1
function moveslide(){ if (curpos>0){ curpos=Math.max(curpos-degree,0) tempobj.style.top=curpos+"px" } else{ clearInterval(dropslide) if (crossobj.filters)crossobj.filters.alpha.opacity=100 else if (crossobj.style.MozOpacity) crossobj.style.MozOpacity=1 nextcanvas=(curcanvas=="canvas0")? "canvas0" : "canvas1" tempobj=ie4? eval("document.all."+nextcanvas) : document.getElementById(nextcanvas) tempobj.innerHTML=scrollercontent[curindex] nextindex=(nextindex<scrollercontent.length-1)? nextindex+1 : 0 setTimeout("rotateslide()",pause) } }
function rotateslide(){ if (ie4||dom){ resetit(curcanvas) crossobj=tempobj=ie4? eval("document.all."+curcanvas) : document.getElementById(curcanvas) crossobj.style.zIndex++ if (crossobj.filters) document.all.canvas0.filters.alpha.opacity=document.all.canvas1.filters.alpha.opacity=20 else if (crossobj.style.MozOpacity) document.getElementById("canvas0").style.MozOpacity=document.getElementById("canvas1").style.MozOpacity=0.2 var temp='setInterval("moveslide()",50)' dropslide=eval(temp) curcanvas=(curcanvas=="canvas0")? "canvas1" : "canvas0" } else if (document.layers){ crossobj.document.write(scrollercontent[curindex]) crossobj.document.close() } curindex=(curindex<scrollercontent.length-1)? curindex+1 : 0 }
function resetit(what){ curpos=parseInt(scroller_height)*(1) var crossobj=ie4? eval("document.all."+what) : document.getElementById(what) crossobj.style.top=curpos+"px" }
Det er en rigtig god ide kun at kalde document.write en gang. det er ligeledes fordel-agtigt at samle strengen i en buffer. buffer=new Array(); buffer[buffer.length]="<table><tr><td>"; buffer[buffer.length]="Hallo</td><td>moster</td></tr><tr><td>"; buffer[buffer.length]="Super</td><td>vejr</td></tr></table>"; document.write(buffer.join('')); buffer.length=0; delete buffer; hvis det er en stor tabel vinder du MEGET ydelse ved at bruge en buffer som ovenfor og skrive én gang, fremfor at skrive flere gange eller "ligge sammen" som "<td>hallo"+"</td>".
Man kan godt bruge en streng som buffer - men array'et er laaaangt hurtigere. JS er ekstremt hurtigt til at håndtere arrays.
Bl.a. derfor er det f.eks. langt at foretrække at anvende JScript under ASP end VBScript - men der er også mange andre. JScript har f.eks. ikke så brækværdig en syntaks, som VBS ;o) /mvh
Det gør du ikke. Du erstatter en masse tegn, da du jo ikke må bruge special-tegn i JavaScript ... heller ikke HTML-entities. Se: http://www.eksperten.dk/spm/349924
Tak fordi I forsøgte at hjælpe mig. Jeg tror jeg bliver nødt til at vælge en "dårligere" løsning. At teste versioner af browsere. Muligvis virker det i begge browsere
hvis man ikke er vandt til at bruge try-catch kan det være svært at gennemskue. try { // Vi har sat en try blok. Det betyder at parseren // skal ligge særligt mærke til koden i denne sektion alert(romeo); // Her kommer der en fejl. romeo is undefined } catch(e) { // I denne blok kan vi behandle fejlen, altså reagere på // en fejl der er opstået i try blokken og derved sikre // at vi har kontrol over hvordan fejlen behandles romeo="julie"; alert(romeo); }
sp >> Jeg finder det virkelig tyndt, at du ikke giver =maddog= points. Det er ikke hans problem, du ikke kan overskue at lave ordentlig kode. Den kode, du begyndte med er - som du selv er klar over - noget skidt. Han har derefter gjort et stort stykke arbejde ud af at hjælpe dig igennem - uden at du dog har fattet ret meget af, hvad det går ud på. Det mindste, du kunne have gjort, var at sige pænt tak for hjælpen. Det er jo ikke hans skyld, du er svømmet ud, hvor du ikke kan bunde. ... ikke videre sympatisk - og ikke noget, der giver lyst til at spilde tid på dig en anden gang.
Olebole du følger jo slet ikke med i tråden. Prøv dog at se efter.
>Jeg finder det virkelig tyndt, at du ikke giver =maddog= points.
Hvor har =maddog= svaret? i tråden? Hvis han vil have nogle point så kan han da trykke på svar. Jeg regner da med at folk der ønsker point bruger "svar" Skal jeg selv spørge om de ønsker point?
>Det er ikke hans problem, du ikke kan overskue at lave ordentlig kode.
Jeg kan sagtens overskue at lave en ordentlig kode. Hans kode er fuldstændig ubrugelig til mit formål. Når jeg bruger den så kalder den funktionen. Det skal den ikke gøre.
>Den kode, du begyndte med er - som du selv er klar over - noget skidt.
Hvilken kode? SE DOG selv efter. Jeg startede ikke med en kode. Mit spørgsmål indeholdte ingen kode.
Som jeg skrev, er det ikke MIG der har skrevet den kode.
>Han har derefter gjort et stort stykke arbejde ud af at hjælpe dig igennem - >uden at du dog har fattet ret meget af, hvad det går ud på.
Nej jeg har fattet hvad det går ud på. Det er svært at komme ud hvor man ikke kan bunde og tabe ansigt.
>Det mindste, du kunne have gjort, var at sige pænt tak for hjælpen.
Det har jeg nærmest også gjort: Jeg skrev:
>>Kommentar: sp 09/05-2003 18:59:30 >>Tak fordi I forsøgte at hjælpe mig. Jeg tror jeg bliver nødt til at vælge en >>"dårligere" løsning. At teste versioner af browsere. Muligvis virker det i >>begge browsere
>Det er jo ikke hans skyld, du er svømmet ud, hvor du ikke kan bunde.
Jeg har det skam helt fint her hvor jeg er. jeg er ikke svømmet ud hvor jeg ikke kan bunde. Jeg spurgte ham om det var rigtigt skrevet, han svaret at det så fint ud. Jeg har slet ikke tænkt mig at bruge "document.write()" i en funktion på noget tidspunkt.
>... ikke videre sympatisk - og ikke noget, der giver lyst til at spilde tid på >dig en anden gang.
Så lad dog være med at deltage hvis du ikke kan overskue tråden.
Det er ikke nemt når eksperterne pludselig viser sig ikke at være eksperter.
Til sidst: Jeg spurgte om hjælp til min scroller. Det kunne han ikke hjælpe med fordi han kun har en "moderne" browser. Mozilla er en MEGET god og moderne browser. Han har ikke svaret på mit spm.
Giv mig et bud på hvordan man kan bruge "try" og "catche" uden at den indsætter en smiley. Det kan jeg ligesom bedre bruge til noget.
Synes godt om
Slettet bruger
10. maj 2003 - 16:04#60
Lige en kommentar til det første: Ja, du skal bede folk om at lægge et svar. Vi er mange herinde, der venter med at svare, til vi er 100% sikre på, vores svar er korrekte. Ellers bliver det uoverskueligt for spørgeren.
Når det var jeg slet ikke klar over. Nogle bruger ikke "svar" men bruger "kommentar" istedetfor. Jeg synes det er meget bedre at bruge "svar" hvis man virkelig ønsker point. Man kan godt bruge "svar" flere gange i tråden. Hvis svaret så kan bruges og det er mig der spørger, vil jeg så acceptere svaret. Det er sådan det har foregået 75% af den tid jeg har været herinde.
Lolda .... har vi mon gang i en lille dreng med ømme tæer her? Du virker ikke mere overbevisende, når du skriger skingert med versaler ... tværtimod :D
"Jeg kan sagtens overskue at lave en ordentlig kode." Ikke ifølge din kommentar (08/05-2003 17:35:22): "Jeg har det problem at koden måske er for dårlig. Det kan da godt være det er problemet. Et andet problem er hvis man bruger noget der ikke er standard i Javascript."
Ja, du udviser tråden igennem stor mangel på kodeforståelse og har tydeligvis endnu ikke fattet, hvordan try/catch fungerer.
"Nej jeg har fattet hvad det går ud på. Det er svært at komme ud hvor man ikke kan bunde og tabe ansigt."
Som sagt: Nej, du har endnu ikke fattet en fløjtende fis, hvilket du også viser med dit spm. til try/catch i dit seneste indlæg. Det er ikke =maddog=, men helt afgjort dig, der er kommet på den forkerte side af tredie revle.
=maddog= kan formodentlig kode og programmere r.... ud af bukserne på dig, men mangler det langvarige pædagogiske studium, der skal til at trænge igennem til dig. Det har absolut ikke noget med hans evner i kodemæssig henseende ... men det skal man nok kunne kode for at kunne gennemskue.
Det er jo ikke uden grund, dine spørgsmål har det med at blive ulideligt lange tråde ... og at du ovenikøbet bliver nødt til at oprette flere spm. om stort set samme problem.
>.... har vi mon gang i en lille dreng med ømme tæer her?
Nej jeg har det skam fint.
>"Jeg har det problem at koden måske er for dårlig. Det kan da godt være det er >problemet. Et andet problem er hvis man bruger noget der ikke er standard i >Javascript."
Ja det er ikke standard endnu, men det virker i browsere der er nyere.
>Ja, du udviser tråden igennem stor mangel på kodeforståelse og har tydeligvis >endnu ikke fattet, hvordan try/catch fungerer.
Nej jeg ved udemærket hvordan try/catch fungerer. Den virker også i IE6.0
>Som sagt: Nej, du har endnu ikke fattet en fløjtende fis, hvilket du også >viser med dit spm. til try/catch i dit seneste indlæg. Det er ikke =maddog=, >men helt afgjort dig, der er kommet på den forkerte side af tredie revle.
He det passer ikke.
>=maddog= kan formodentlig kode og programmere r.... ud af bukserne på dig, men >mangler det langvarige pædagogiske studium, der skal til at trænge igennem til >dig.
Ja det kan være. Jeg kan ikke se hvilken betydning det har, når koden er fuldstændig ubrugelig til det jeg ønsker.
>Det er jo ikke uden grund, dine spørgsmål har det med at blive ulideligt lange >tråde...
Det er fordi jeg ikke har fået et svar jeg kan bruge til noget.
>... og at du ovenikøbet bliver nødt til at oprette flere spm. om stort set samme problem.
Nej jeg har ikke oprettet flere spm om stort set det samme problem. Det er alle sammen forskellige problemer.
"Det er fordi jeg ikke har fået et svar jeg kan bruge til noget." Det er uden tvivl helt rigtigt ... men det siger jo ikke nødvendigvis noget om svarerne eller deres svar ;o)
Ingen forsøg på hjælp fra mig i fremtiden ... så hellere bruge tiden på brugere, der er indenfor pædagogisk rækkevidde.
"Hvis jeg skal kunne bruge koden til noget, skal den virke i alle browsere. Det er ikke nemt når "eksperterne" herinde taber ansigt."
try-catch blokke er lige så gammelt som javascript selv. Det er simpelthen den universielle måde at sikre sig at scriptet ikke fejler under brug. For at try-catch blokken skal være virkelig effektiv kræver det dog at man er nogenlunde påpasselig når man koder sine egne funktioner og objekter således de rent faktisk kaster en undtagelse (Exception) når de fejler. Derfor skal try-catch helst findes under eksekvering. Hvis man ikke kan overskue det er man i problemer. Taber ansigt? Muligvis, det er bare underligt at vi alle sammen er dumme. Jeg mener der må jo være noget galt når vi alle sammen foreslår code-branching og try-catch i flok... Browser-sniffing er en super-dum ting, fordi det er kortsigtet. Hvordan kan vi vide det? Sikkert fordi vi har lavet kode siden NS4 var ny, og set hvordan vores kode ikke kunne vedligeholdes når vi har brugt browser-sniffing.
Du er velkommen til at kigge mine gamle svar igennem. Du vil se at jeg konsekvent først svarer når jeg bliver bedt om det.
Jeg vil også betragte denne diskussion som værende overstået. Hvis du ikke ønsker at give mig point vil jeg heller ikke have nogen.
Det er ikke nok bare at sætte try/catch rundt om et funktionskald fordi der kan have været udført ændringer i dokumentet før der bliver kastet en exception. Forneden er henholdsvis insertIcon() og et script der viser hvad jeg mener.
function insertIcon(icon){ var input = document.forum.comments;
if (input.setSelectionRange) { var selectionStart = input.selectionStart; var selectionEnd = input.selectionEnd; input.value = input.value.substring(0, selectionStart) + " " + icon + " " + input.value.substring(selectionEnd); input.setSelectionRange(selectionStart + text.length, selectionStart + text.length); input.focus(); } else if (document.selection) { var range = document.selection.createRange(); if (range.parentElement() == input) range.text = " " + icon + " "; } input.focus(); } } -- <html> <head> <title>test</title>
<script type="text/javascript">
function test() { try { var v=document.getElementById("tekst");
var test="abc"; // der bliver ikke kastet en exception // se selectionStart/selectionEnd (der ikke er standard) i insertIcon() var a=v.ikkeDefineret;
// der bliver ikke kastet en exception // se substring() i insertIcon() test=test.substring(0,a)+":-)"+test.substring(a); // dokumentet bliver ændret v.value=test;
// der bliver kastet en exception // men dokumentet er nu ændret // se setSelectionRange(), der ikke er standard v.ikkeDefineret(); } catch(e) { alert("exception"); }; }
SQL- flyttede jeg til Acces hvor det hører hjemme. Jeg havde postet det forkert. PRØV DOG AT LÆSE HVAD JEG SKRIVER.
Det samme med scrolleren. Jeg flyttede det til DHTML. Det har jeg lov til at gøre. Og det står der også i de tråde det drejer sig om. Hold kæft hvor er I mærkelige.
"Muligvis, det er bare underligt at vi alle sammen er dumme" Øhh lige får jeg at vide at det er mig der er dum. Jeg har ikke nævnt noget om at I andre er dumme - slap dog af.
Men jeg har selv fundet en løsning på mit problem. Selvom noget af det i insert Icon() ikke er standard i Mozilla, virker den tilsyneladende alligevel.
Maddog har stadig ikke svaret på hvad det er for en browser han tester sine sider i:-0
Hverken Olebole eller Maddog kender mig. Maddog har stadig ikke svaret på mit spm. om hvilken browser han kører med.
Maddog >> Jeg vil gerne give dig point for at du anbefalede at bruge en buffer, men det egentlige spm som jeg oprettede handlede om at finde ud af hvilken browser man kører med. Det var det jeg havde brug for. Ikke noget kode som kalder en funktion og hvis det ikke er standard så kommer der en fejl. Det virker ikke. Jeg vil have det til at virke i Mozilla også. Jeg kan godt oprette et spm så jeg har mulighed for at give dig nogle point.
Jeg har lige (gen-)læst mig til at autoriteter på javascript anbefaler, at man ikke laver browser-sniffing, af flere grunde:
For det første kommer der jo altså nye browsere, som måske ikke bliver fanget ved sniffingen, For det andet forekommer det, at browsere umiddelbart angiver sig selv som noget andet (f.eks. IE 5, som angiver sig selv som Internet Explorer 4 -- langt inde kan man finde MSIE 5), Desuden licenserer nogle brugen af en browser og overskriver måske identiteten, så svaret er svært at forudsige ...
Hvad så -- jamen kan browseren det du vil:
spørg på om en metode eller egenskab findes, findes den kan du bruge den, altså f.eks. if (document.all)
Tak tak, jeg har fundet ud af det. Min form med textarea skal placeres øverst på siden og javascriptet nederst, det var jeg ikke lige klar over. Den detalje manglede if (document.selection.createRange()) document.write("yes") Virker nu både i IE og Mozilla hvis jeg sørger for at placere det korrekt på siden.:-)))
Nej men jeg er kommet videre. Dette var en helt anden test. Det var en test om om den skrev "yes" hvis jeg placerede et textarea på min side. Det gjorde den. Ekspemplet i min kommentar 12/05-2003 14:45:51 virker også.
Det eksempel i 13/05-2003 15:46:23 har jeg brugt i *.js-filen og det virker!:-)
Synes godt om
Slettet bruger
14. maj 2003 - 15:19#87
OK, så skærer jeg det ud i pap: For at teste, om en metode findes, skal du ikke skrive de to paranteser efter metoden. Hvis der skal testes for fx document.getElementById(), skrives dette:
if (document.getElementById) { //Bla bla }
Dette er altså forkert:
if (document.selection.createRange()) { //gør noget }
Tak for det. Jeg bruger stadig eksemplet 13/05-2003 15:46:23 i *.js-filen. Jeg kan forstå at mit eget eksempel virker, men er forkert. At man ikke skal skrive if(document.selection.createRange())
men skal skrive: if(document.selection.createRange) Har jeg nu forstået.
Ja jeg har åbnet for point men =maddog= har ikke svaret. Så kan jeg jo ikke rigtigt gøre noget.
phoenixv >> Vil du have nogle point, så kan jeg da også oprette en ref til dig også.
Synes godt om
Slettet bruger
18. maj 2003 - 10:59#91
Nej tak.
Synes godt om
Ny brugerNybegynder
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.