[js]Połączenie skryptu wykrywania przeglądarki z alertem

HTML to podstawy w dziedzinie tworzenia stron WWW, Style CSS warto opanować, bowiem za ich pomocą można dostosować odpowiednio wygląd swojej witryny WWW. Zagłębiamy się dalej i udostępniamy w tym forum możliwość zadawania pytań o JavaScript.
AdamAGP
Nowy
Nowy
Posty: 114
Rejestracja: wt paź 24, 2006 9:40 pm
Kontakt:

[js]Połączenie skryptu wykrywania przeglądarki z alertem

Post autor: AdamAGP »

Może mi ktoś powiedzieć kla przerobić taki skrypt:

Kod: Zaznacz cały

<SCRIPT TYPE="text/JavaScript" LANGUAGE="JavaScript">
<!-- // ukrywanie przed starszymi przegladarkami
klientName = opera.appName;
klientVer = parseInt(opera.appVersion);

if (klientName == "opera" && klientVer >=1) {
	wersja = true; 

}
// koniec ukrywania -->
</SCRIPT>
i połaczyć go z tym:

Kod: Zaznacz cały

<body OnLoad="alert('Nie zaleca się używania przeglądarki Opera do oglądania tej strony!\n');">
Tak, żeby przy otwarciu strony w operze wyskaiwał alert
koziolek
Przelotem
Przelotem
Posty: 387
Rejestracja: sob paź 21, 2006 10:07 pm
Kontakt:

Re: [js]Połączenie skryptu wykrywania przeglądarki z alertem

Post autor: koziolek »

Kod: Zaznacz cały

function alertOpera(){
klientName = opera.appName;
klientVer = parseInt(opera.appVersion);

if (klientName == "opera" && klientVer >=1) {
  alert('Nie zaleca się używania przeglądarki Opera do oglądania tej strony!\n');
}
a w kodzie strony:

Kod: Zaznacz cały

<body OnLoad="alertOpera()">
AdamAGP
Nowy
Nowy
Posty: 114
Rejestracja: wt paź 24, 2006 9:40 pm
Kontakt:

Re: [js]Połączenie skryptu wykrywania przeglądarki z alertem

Post autor: AdamAGP »

Jeśli dobrze rozumiem pierwszy kod powinienem wstawić w <head></head>
a drugi dodać jako parametr znacznika <body>?

Tylko, że wychodzi mi błąd: oczekiwano znaku '}'
123456
Zaczyna działać
Zaczyna działać
Posty: 514
Rejestracja: sob paź 28, 2006 1:19 pm

...

Post autor: 123456 »

Trzeba dostawic jedna klamerke na samym koncu

Kod: Zaznacz cały

function alertOpera(){
     klientName = opera.appName;
     klientVer = parseInt(opera.appVersion);

     if (klientName == "opera" && klientVer >=1) {
          alert('Nie zaleca się używania przeglądarki Opera do oglądania tej strony!\n');
     } 
}
koziolek
Przelotem
Przelotem
Posty: 387
Rejestracja: sob paź 21, 2006 10:07 pm
Kontakt:

Re: [js]Połączenie skryptu wykrywania przeglądarki z alertem

Post autor: koziolek »

@123456 racja :) z pośpiechu mi gdzieś umknęła...
AdamAGP
Nowy
Nowy
Posty: 114
Rejestracja: wt paź 24, 2006 9:40 pm
Kontakt:

Re: [js]Połączenie skryptu wykrywania przeglądarki z alertem

Post autor: AdamAGP »

Wyskakuje mi jescze "barak definicji 'opera' ". Opera wpisałem w miejsce "netscape" z oryginału skryptu. Widzę, że chyba tak nie można? Przy okazj jak wstawiam ten skrytp to czasem wychodzi mi jescze brak definicji 'zamien' ze skrytpu butomów rollover, który bez tego skryptu działa normalnie.

Są jakies warunki wstawienie tego sktyptu? - musi być jako pierwszy w nagłówku? Wewnątrz arkusza? W zewnętrznym arkuszu?
koziolek
Przelotem
Przelotem
Posty: 387
Rejestracja: sob paź 21, 2006 10:07 pm
Kontakt:

Re: [js]Połączenie skryptu wykrywania przeglądarki z alertem

Post autor: koziolek »

Bo widzisz zmienna opera jest włąściwa tylko dla przeglądarek Opera. Jest to tzw. zmienna predefiniowana, którą tworzą programiści Opery...
Ja bym ten kawałekm kodu napisał tak. Zamiast:

Kod: Zaznacz cały

   klientName = opera.appName;
     klientVer = parseInt(opera.appVersion); 
wstawiłbym coś takiego:

Kod: Zaznacz cały

   klientName = navigator.appName;
     klientVer = parseInt(navigator.appVersion); 
Oczywiście nie jest to nawet dobre rozwiązanie gdyż Opery mają tendencję do podszywania się pod IE... niestety...

ps. odpowiedź uprzedzająca nie da się wykryć dowolnej przeglądarki za pomocą JS/akcji na serwerze... poprostu jest za duzo przeglądarek. Na chwilę obecną około 1200 różnych...
AdamAGP
Nowy
Nowy
Posty: 114
Rejestracja: wt paź 24, 2006 9:40 pm
Kontakt:

Re: [js]Połączenie skryptu wykrywania przeglądarki z alertem

Post autor: AdamAGP »

Czyli nie da się napisać takiego skryptu, który wykryje, że to opera i wyświetli alert?
koziolek
Przelotem
Przelotem
Posty: 387
Rejestracja: sob paź 21, 2006 10:07 pm
Kontakt:

Re: [js]Połączenie skryptu wykrywania przeglądarki z alertem

Post autor: koziolek »

kto to powiedział??

Kod: Zaznacz cały

function isOpera(){
if(navigator.userAgent.indexOf("Opera")>-1){
alert("to jest opera");
return true;
}
else{
alert("to nie jest opera")
return false;
}
}
przyczym:
zmiana "Opera" na np. FF nie da odpowiednich rezultatów :) Akurat opere wykrywa się całkiem miło i nie jest to trudne.

Pozdrawiam
AdamAGP
Nowy
Nowy
Posty: 114
Rejestracja: wt paź 24, 2006 9:40 pm
Kontakt:

Re: [js]Połączenie skryptu wykrywania przeglądarki z alertem

Post autor: AdamAGP »

Kurcze no nie umiem tego wstawić :( Jestem zielony z JS.
Mogbyś mi dokładnie rozpisać jaki kod gdzie wstawić i co dokładnie gdzie, żeby wyświetlało przy ładowaniu, gdy opera alert, gdy inna przeglądaraka to brak akcji.
Byłbym bardzo wdzięczny :)
koziolek
Przelotem
Przelotem
Posty: 387
Rejestracja: sob paź 21, 2006 10:07 pm
Kontakt:

Re: [js]Połączenie skryptu wykrywania przeglądarki z alertem

Post autor: koziolek »

Kod: Zaznacz cały

<html>
<head>
<script type="text/javascipt">
function isOpera(){
if(navigator.userAgent.indexOf("Opera")>-1){
alert("to jest opera");
return true;
}
else{
return false;
}
} 
</script>
<!-- reszta nagłówka-->
</head>
<body onload="isOpera()">
<!-- reszta strony-->
</body>
</html>
???
AdamAGP
Nowy
Nowy
Posty: 114
Rejestracja: wt paź 24, 2006 9:40 pm
Kontakt:

Re: [js]Połączenie skryptu wykrywania przeglądarki z alertem

Post autor: AdamAGP »

Dzięki, działa :lol:
AdamAGP
Nowy
Nowy
Posty: 114
Rejestracja: wt paź 24, 2006 9:40 pm
Kontakt:

Re: [js]Połączenie skryptu wykrywania przeglądarki z alertem

Post autor: AdamAGP »

A jak powinien wyglądać ten skrypt, żeby w przypadku opery przekierowywał np. do pliku index2.html?
koziolek
Przelotem
Przelotem
Posty: 387
Rejestracja: sob paź 21, 2006 10:07 pm
Kontakt:

Re: [js]Połączenie skryptu wykrywania przeglądarki z alertem

Post autor: koziolek »

zamiast alert należy napisać:

Kod: Zaznacz cały

window.open("index2.html", "_self");
AdamAGP
Nowy
Nowy
Posty: 114
Rejestracja: wt paź 24, 2006 9:40 pm
Kontakt:

Re: [js]Połączenie skryptu wykrywania przeglądarki z alertem

Post autor: AdamAGP »

Dzięki wielkie. działa :lol:
ODPOWIEDZ