jensgMedlem sedan nov. 200026 inlägg Hej
Jag hade en bra browsercheck innan, som kände av om Operaanvändare hade sin browser inställd på att indentifiera sig som IE4, 5, 6 eller Netscape 4,5 osv.
Den skickade användare av:
IE3 till: blocked.html
IE4,5,6 till: ie.html
NS 2,3,4 till: blocked.html
NS 5 till: ns.html
Opera till: blocked.html
Other till: blocked.html
Nu har jag blivit av med den :(
Någon här som har ett liknande javascript?
MVH jensg
// Denna kod innehåller fel. Se mitt inlägg nedan istället
if (window.sidebar)
window.open("ns.html", "_top");
if (document.all && !document.opera)
window.open("ie.html", "_top");
else
window.open("blocked.html", "_top");
Här jag valt _top som target men det är ju förstås en smaksak. _self öppnar sidan som vanligt i ev frames, _top gör browserchecken även till en utmärkt framekiller.
Får jag f.ö. fråga vad det är som inte funkar i Opera? (Eftersom du vill skicka Opera till blocked)
jensgMedlem sedan nov. 200026 inlägg Kommer verkligen användaren till respektive sida med hjälp av detta scriptet? Inte så vass på detta :)
Ja förutsatt att du laddat upp alla filer till samma katalog osv. Om t ex ns.html och ie.html ligger i en underkatalog som heter "filer" måste du lägga till filer/ innan filnamnet.
Men själva checken funkar som den ska om det var vad du menade.
dectgapMedlem sedan sep. 20021 655 inlägg
nitro2k01 skrev:
if (window.sidebar)
[...]
Fast window.sidebar finns även i FireFox.
window.opera kan man kolla istället, om man inte vill inkludera Firefox i kontrollen.
jensgMedlem sedan nov. 200026 inlägg Tack för era svar. Skrev detta scriptet innan. Kan ni kolla om det är några fel på det?
Mvh
<script>
if (( navigator.userAgent.indexOf("Opera") !=-1 ) && ( navigator.userAgent.indexOf("MSIE") !=-1)) {
document.write ("opera as msie");
}
if (( navigator.userAgent.indexOf("Opera") !=-1 ) && ( navigator.userAgent.indexOf("Mozilla/3") !=-1)) {
document.write ("opera as mozilla 3");
}
if (( navigator.userAgent.indexOf("Opera") !=-1 ) && ( navigator.userAgent.indexOf("Mozilla/4") !=-1)) {
document.write ("opera as mozilla 4");
}
if (( navigator.userAgent.indexOf("Opera") !=-1 ) && ( navigator.userAgent.indexOf("Mozilla/5") !=-1)) {
document.write ("opera as mozilla 5");
}
if (( navigator.userAgent.indexOf("Opera") !=-1 ) && ( navigator.appName == "Opera" )) {
document.write ("opera as opera");
}
if (( navigator.userAgent.indexOf("MSIE 4") !=-1 ) && ( navigator.userAgent.indexOf("Mozilla/4") !=-1)) {
document.write ("msie 4");
}
if (( navigator.userAgent.indexOf("MSIE 5") !=-1 ) && ( navigator.userAgent.indexOf("Mozilla/4") !=-1)) {
document.write ("msie 5");
}
if (( navigator.userAgent.indexOf("MSIE 6") !=-1 ) && ( navigator.userAgent.indexOf("Mozilla/4") !=-1)) {
document.write ("msie 6");
}
if (( navigator.userAgent.indexOf("Mozilla/4") !=-1 ) && ( navigator.appName == "Netscape" )) {
document.write ("netscape 4");
}
if (( navigator.userAgent.indexOf("Mozilla/5") !=-1 ) && ( navigator.appName == "Netscape" )) {
document.write ("moz 5");
}
else {
document.write ("unknown");
}
</script>
Ja, att det är onödigt långt.
Dectgap » Firefox är ju en version av NS5, så det bör väl inte vara nåt problem? Grejen med denna browsercheck är väl endast att inte lotsa in en besökare med browser som visar sidan på fel sätt?
dectgapMedlem sedan sep. 20021 655 inlägg
nitro2k01 skrev:
Dectgap » Firefox är ju en version av NS5, så det bör väl inte vara nåt problem? Grejen med denna browsercheck är väl endast att inte lotsa in en besökare med browser som visar sidan på fel sätt?
Äsch, det var bara jag som inte läste tillräckligt noga.
Jag trodde att du använde window.sidebar för att skilja Opera från andra läsare. Det finns ju en typ av sidebar i Opera, så jag trodde att det var den du syftade på.
Och nu ser jag att du har använt document.opera..
Glöm mitt inlägg - och ja, jag vet att jag förtjänar en omgång smisk för att jag bara läste första raden i if-satsen.
My bad: window.opera ska det var...
if (window.sidebar)
window.open("ns.html", "_top");
if (document.all && !window.opera)
window.open("ie.html", "_top");
else
window.open("blocked.html", "_top");