更新
问题是我使用了很多Javascript&支持CSS3的模块也包含大量重量级的javascript和图像。如果它是IE6到8,在某些情况下甚至是9,我不想显示这些模块或使用其他方法显示它们。使用CSS属性display:none
或使用Conditional Comments
的条件样式表并不能解决我的问题,因为页面仍然会加载所有的javascript和图像。
隐藏它们不是决议。
因此,我希望使用非常不同的<div>
和模块位置结构加载一个非常不同的布局。
这就是为什么我想把所有页面加载到不同的页面。
请帮助处理一些代码段。
我是编程新手,需要帮助。问题是这样的:
我为我的网站开发了一个模板,我在其中使用了很多jQuery和CSS3函数。
显然我特意挑战IE。因此,我正在寻求帮助提供特定于浏览器的页面。我想做的是:
识别浏览器,如果它是IE,那么它会加载一个名为ie.php的变量页,类似于iphone,chrome,safari,firefox等。
如果你可以提供一个php解决方案,那将是很棒的。但是我也使用jQuery,因此如果在jQuery中有一个更简单的镜头方法,那就没问题了。
请注意:我是编程的新手,因此请帮助解释一下这些功能。
答案 0 :(得分:1)
jQuery(和JavaScript)可以轻松检查浏览器。查看jQuery.browser
。
然后,一旦检测到浏览器,您就可以使用简单的ie.php
函数加载include_once()
(我不知道您需要的原因)。
答案 1 :(得分:1)
如果您想加载不同的css / js文件,如果浏览器可以在<head>
中添加这样的内容,只能输入所需的css / js
<!--[if IE 8]>
<script type='text/javascript' src='js/excanvas.js'></script>
<link rel="stylesheet" href="css/IEfix.css" type="text/css" media="screen" />
<![endif]-->
<!--[if IE 7]>
<script type='text/javascript' src='js/excanvas.js'></script>
<link rel="stylesheet" href="css/IEfix.css" type="text/css" media="screen" />
<![endif]-->
或者您可以查看PHP中的$ _SERVER ['HTTP_USER_AGENT']并查看各种浏览器的内容。
希望这会有所帮助
答案 2 :(得分:1)
您应该通过功能而不是浏览器进行检测。为此我建议:Modernizr
对于处理IE,你会发现有用的Conditional comments - 不需要使用服务器端编程(和不同的模板文件)或JavaScript(可能不可用)。
答案 3 :(得分:0)
我建议您阅读conditional comments
然后你可以做(作为一个例子):<!--[if IE 6]>
Special instructions for IE 6 here
<![endif]-->
答案 4 :(得分:0)
因为你正在寻找一个php解决方案:
简单switch case即可。 (或&#34; if,else if,...&#34;)
使用php get_browser函数
检查用户浏览器然后,使用header.location
将用户重定向到正确的页面希望这会有所帮助......