Moja strona internetowa chce być otwarta IE7 i wyżej. Jeśli IE 6, chcę produkować ostrzeżenie i pobrać inne ikony przeglądarki. Czy to możliwe?Jeśli IE 6, chcę produkować ostrzeżenie i bezpłatnie pobrać inne ikony przeglądarki
Odpowiedz
Możesz pobrać przykłady, które nie wymagają skryptów po stronie serwera od ie6nomore.com.
Używają komentarze warunkowe funkcji IE, tak:
<!--[if lt IE 7]>
Your browser is outdated!
<![endif]-->
Ale przykłady na stronie faktycznie oferują linki do innych przeglądarek. Oczywiście możesz ulepszyć własną wersję, która pasuje do twojego układu.
Oczywiście, możesz zrobić to po stronie serwera, jeśli wolisz, skoro i tak używasz PHP. Inne przykłady tutaj, używając $_SERVER["HTTP_USER_AGENT"]
powinny zacząć. Używanie get_browser
może być przesadą, ponieważ wymaga dość dużego pliku danych do działania.
Jeśli jesteś zainteresowany tylko w wykrywaniu stare wersje IE po stronie serwera, to należy zrobić: komentarze warunkowe
preg_match('/; MSIE (\d+.\d+)/', $_SERVER['HTTP_USER_AGENT'], $matches);
if (count($matches) > 1 && $matches[1] <= 6.0)
{
echo "Your browser is outdated";
}
Możesz sprawdzić zmienną $_SERVER['HTTP_USER_AGENT']
dla IE.
if (eregi("MSIE", $_SERVER["HTTP_USER_AGENT"]) ||
eregi("Internet Explorer", $_SERVER["HTTP_USER_AGENT"])) {
// IE
}
używać IE twojej stronie
<!--[if lt IE 7]>
include a warning here (in an iframe, perhaps, to save extra bandwidth)
<![endif]-->
powinieneś być w stanie to zrobić łatwo za pomocą wbudowanej funkcji get_browser
.
Jeśli chcesz zobaczyć, jak wyglądają dane wyjściowe, gdy odwiedzane są przez IE 6, możesz pobrać ciąg agenta użytkownika z wersji UserAgentString.com, aby go przetestować.
Ewentualnie można również sprawdzić go z JavaScript
/*
* Check whether the current browser is IE6
*/
function isBrowserIE6() {
if (Sys.Browser.agent == Sys.Browser.InternetExplorer && Sys.Browser.version < 7) {
return true;
} else {
return false;
}
}
(Powyższy po prostu pracować w środowisku ASP.NET. Here's a blog post który obsługuje IE sprawdzanie natywny sposób).
Następnie dodać element kontenera HTML na swojej stronie
<div id="ie6BrowserWarning" style="display:none">
Your browser is outdated. Please download one of the alternative browsers!
<!-- Set of links to Firefox, Chrome, Safari, Opera,... -->
</div>
A na stronie obciążenia robisz
<html>
<head>
<script type="text/javascript">
function doIE6WarningCheck()
{
var element = document.getElementById("ie6BrowserWarning");
var isIE6 = isBrowserIE6();
if(element != null && isIE6 == true)
{
element.style.display = "block";
}
}
</script>
</head>
<body onLoad="doIE6WarningCheck()">
<div id="ie6BrowserWarning" style="display:none">
Your browser is outdated. Please download one of the alternative browsers!
<!-- Set of links to Firefox, Chrome, Safari, Opera,... -->
</div>
</body>
</html>
nie sprawdzić, że po prostu napisał to z mojej głowie teraz . Musiałbyś to zrobić, ale myślę, że to powinno zadziałać. Firebug jest zawsze dobrym rozwiązaniem do debugowania JavaScriptu.
To nie jest standardowy JavaScript. Działa tylko w środowisku ASP.NET. Niezbyt pomocny, ponieważ używa PHP. Jeśli chcesz wykonać tę stronę klienta, komentarze warunkowe są znacznie łatwiejsze. – Thorarin
Niestety, wziąłem isBrowserIE6() z tego, co napisałem kilka razy temu. Nie zwrócił uwagi, że uruchomi się po prostu na ASP.net. Oczywiście komentarze warunkowe są łatwiejsze, JavaScript byłby po prostu alternatywą. (Zaktualizowałem post, aby wskazać stronę zawierającą sprawdzanie rodzimej przeglądarki). – Juri
używać ich skrypt do promowania użytkownikowi zaktualizować swoją przeglądarkę jego customizable.you może sprawdzić każdą przeglądarkę nie tylko czyli 6
Nie wychodzi prosty plugin jQuery do tego to się nazywa IE Alert.Sprawdź to: http://nmsdvid.com/iealert/
W szczególności, musisz wyszukać w tej zmiennej ciąg "MSIE 6.0". –
Powiedział, że IE6, a nie IE całkowicie. – Esko