Avatar billede ssv Nybegynder
05. januar 2009 - 15:24 Der er 18 kommentarer og
1 løsning

Crossbrowser tilføj startside-script

Hello.

Kan det virkelig passer at der ikke findes et crossbrowser javascript, hvor brugeren kan tilføje en bestemt startside via et link? Jeg har ledt på Google, diverse forummer og eksperten uden held.

Tilsyneladende findes der ikke noget, da selv Google's tilføj startside-script kun duer/vises i IE.

Findes der et script der så kan 'vise' forskellige scripts til forskellige browsere, hvis nu hver browser har sin egen specielle måde at tolke et tilføje startside-script?
Avatar billede olebole Juniormester
05. januar 2009 - 15:35 #1
<ole>

Ja, det er helt korrekt. Den slags kan kun scriptes i IE

/mvh
</bole>
Avatar billede ssv Nybegynder
05. januar 2009 - 16:06 #2
Okay, så langt så godt. Kan man så på en måde skrive en besked til brugeren, således man kan guide brugeren til hvordan startsiden så skal tilføjes?

Jeg havde forestillet mig noget alá at scriptet (selvfølgelig) skal fungere i IE. Ser en bruger så siden i Firefox, Chrome, Safari eller en helt fjerde browser, skal man kunne individuelt til hver browser, vise en guide til brugeren. Evt. ved skjulte div's hvor én vises til hver browser.
Avatar billede jokkejensen Novice
05. januar 2009 - 16:51 #3
<p><!--[if IE]>
According to the conditional comment this is Internet Explorer<br />
<![endif]-->
<!--[if IE 5]>
According to the conditional comment this is Internet Explorer 5<br />
<![endif]-->
<!--[if IE 5.0]>
According to the conditional comment this is Internet Explorer 5.0<br />
<![endif]-->
<!--[if IE 5.5]>
According to the conditional comment this is Internet Explorer 5.5<br />
<![endif]-->
<!--[if IE 6]>
According to the conditional comment this is Internet Explorer 6<br />
<![endif]-->
<!--[if IE 7]>
According to the conditional comment this is Internet Explorer 7<br />
<![endif]-->
<!--[if gte IE 5]>
According to the conditional comment this is Internet Explorer 5 and up<br />
<![endif]-->
<!--[if lt IE 6]>
According to the conditional comment this is Internet Explorer lower than 6<br />
<![endif]-->
<!--[if lte IE 5.5]>
According to the conditional comment this is Internet Explorer lower or equal to 5.5<br />
<![endif]-->
<!--[if gt IE 6]>
According to the conditional comment this is Internet Explorer greater than 6<br />
<![endif]-->
</p>
Avatar billede jokkejensen Novice
05. januar 2009 - 16:53 #4
sorry, skulle kun lige have haft den første med,

Brug:

[if !IE] til FF og de andre.
Avatar billede ssv Nybegynder
05. januar 2009 - 16:58 #5
Jeg kender godt den artikel fra Quirksmode :-)

Selvfølgelig kan jeg bruge det til at få scriptet til at blive vist i IE - men hvordan vil du kende forskellen på fx FF og Chrome? Jeg skal gerne bruge et script der kan vise forskellig div'er efter hvilken browser brugeren bruger, så vi kan vise en udførlig guide til netop dén browser..
Avatar billede jokkejensen Novice
05. januar 2009 - 18:04 #6
Nååå altså du vil undervise folk i hvordan de bruger deres favoritter.. hehe tro mig min ven, hvis de gider bookmarke din side og overhovedet bruger bookmarks, skal de nok gøre det af sig selv. - Jeg trode du ville skjule linket for andet end ie, og ellers bare skrive "husk at bookmarke !!" til de andre.

Men hvis du kender quirksmode så godt, så ligger der også et browserdetect script derinde.

Der kan du på browser og versions niveau skrive undtagelser. Men det bliver noget af en omgang. Der findes en del.

/J
Avatar billede ssv Nybegynder
05. januar 2009 - 18:19 #7
Nuvel. Men nu er alle folk jo ikke ens.

Spørgsmålet lød ikke i om brugerne overhovedet gad at bruge funktionen - men _hvordan_ det kunne laves.

Og kan man så kombinere browser detect-scriptet fra Quirksmode (http://www.quirksmode.org/js/detect.html) med noget jeg kan bruge? Dét er spørgsmålet lige nu :-)
Avatar billede olebole Juniormester
05. januar 2009 - 20:44 #8
Jeg tror, alle gangbare IE-versioner understøtter denne feature, så du burde kunne nøjes med:

<!--[if IE]>
<p><a href="#" onclick="external.AddFavorite(location.href, document.title);return false">Bookmark denne side</a></p>
<![endif]-->
Avatar billede olebole Juniormester
05. januar 2009 - 20:49 #9
- eller 'x-browser':

<div style="position:relative">
Husk at bookmare denne side.
<!--[if IE]>
<div style="position:absolute;top:0;left:0;width:100%;background:white"><a href="#" onclick="external.AddFavorite(location.href, document.title);return false">Bookmark denne side</a></div>
<![endif]-->
</div>
Avatar billede ssv Nybegynder
05. januar 2009 - 22:14 #10
x-browser? :-)

Okay, jeg har forstået pointen i at det kun er 'smartest' at tilbyde IE-brugere funktionen at tilføje min side som startside. Men hvad nu hvis jeg _vil_ have muligheden for kunne skrive en besked til de brugere, der besøger min side med forskellige browsere? Jeg kan se ud fra scriptet at der er nogle variabler osv. Er det ikke muligt at "lænke" dem sammen med nogle forskellige div'er, så kun én div er vist af gangen?
Avatar billede olebole Juniormester
05. januar 2009 - 22:19 #11
"Men hvad nu hvis jeg _vil_ have muligheden for kunne skrive en besked til de brugere, der besøger min side med forskellige browsere?" >> Jamen, i forhold til bookmarking er det vel ikke nødvendigt.

Der er jo kun to muligheder: Hvis det er en IE, kan brugeren klikke på et link og få siden tilføjet sine favoritter - det kan han ikke med andre browsere
Avatar billede ssv Nybegynder
05. januar 2009 - 22:48 #12
Tja, jeg har forstået det med at det kun er for IE brugere - skal jeg oprette et nyt spørgsmål for at kunne give brugere en speciel meddelelse alt efter hvad browser de bruger? ;-)
Avatar billede olebole Juniormester
05. januar 2009 - 23:10 #13
Nej, det behøver du ikke, men hvad vil du med det?

"hvis nu hver browser har sin egen specielle måde at tolke et tilføje startside-script" >> som sagt er der to måder: Enten - eller.

At lave et script, der kan kende alle på markedet værende browsere og deres forskellige versioner, som er i brug, vil være temmelig omfattende - og helvede at holde ved lige ... og det vil næppe kunne gøre noget for dig  =)
Avatar billede ssv Nybegynder
05. januar 2009 - 23:25 #14
Jeg _har_ forstået det omkring IE - og at det er enten eller. Fint, lad det være det. Det er forstået :-)

Den anden ting er mere en ting der kan bruges i projekter fremover, omkring netop dette. Og hvis det kan lade sig gøre at 'aktivere' en bestemt div til en bestemt browser, kan jeg ikke rigtig se problemet i at lade være. De eneste browsere der skal være fokus på, er IE, FF, Chrome, Safari og Opera. Jeg kan evt. udbygge scriptet senere hen hvis en ny browser dukker op :-)
Avatar billede olebole Juniormester
06. januar 2009 - 01:05 #15
Tjek, hvad denne siger i hver enkel browser:
    alert(navigator.userAgent+"\n"+parseFloat(navigator.appVersion))

Så kan du lave en lang række if-sætninger på basis af det
Avatar billede olebole Juniormester
06. januar 2009 - 01:08 #16
- men læg mærke til, at flere browsere - herunder Opera - også skriver 'MSIE' i userAgent. Så for at kunne sige, det er en IE, må du sikre dig, der udover at stå 'MSIE' ikke også står 'Opera', osv  ;o)

Der er mange grunde til, at erfarne webprogrammører altid advarer mod browsersniffing på baggrund af navn og version  =)
Avatar billede ssv Nybegynder
06. januar 2009 - 10:56 #17
Okay, jeg hører hvad du siger. Det har givet stof til eftertanke. Tak for dine kommentarer.

I må lægge et svar hvis der skal kastes point efter jer ;-)
Avatar billede olebole Juniormester
06. januar 2009 - 13:03 #18
Selvtak  ;o)
Avatar billede ssv Nybegynder
08. januar 2009 - 15:49 #19
Det lader til Jokke ikke vil deltage her - der lukkes :-)
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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