如何用html判断浏览器内核

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用html判断浏览器内核相关的知识,希望对你有一定的参考价值。

我写的网页在chrome下可以兼容,但ie兼容不了,排版混乱。然后我写了ie版本的,chrome版本的。我想把这两个版本的都上传,当用户自己浏览时自动判断自己的浏览器内核,然后选择的进入自己内核的网页。
我看到了好多是js写的判断,我希望能看到html写的判断方法。

js方法

    判断浏览器名称和版本

    目前只能判断:ie/firefox/chrome/opera/safari

    2012年5月16日23:47:08

    浏览器内核UA:UA;

    浏览器内核名称:NV.name;

    浏览器内核版本:NV.version;

    浏览器外壳名称:NV.shell;

var NV = ;

var UA = navigator.userAgent.toLowerCase();

try

NV.name=!-[1,]?\'ie\':

(UA.indexOf("firefox")>0)?\'firefox\':

(UA.indexOf("chrome")>0)?\'chrome\':

window.opera?\'opera\':

window.openDatabase?\'safari\':

\'unkonw\';

catch(e);

try

NV.version=(NV.name==\'ie\')?UA.match(/msie ([\\d.]+)/)[1]:

(NV.name==\'firefox\')?UA.match(/firefox\\/([\\d.]+)/)[1]:

(NV.name==\'chrome\')?UA.match(/chrome\\/([\\d.]+)/)[1]:

(NV.name==\'opera\')?UA.match(/opera.([\\d.]+)/)[1]:

(NV.name==\'safari\')?UA.match(/version\\/([\\d.]+)/)[1]:

\'0\';

catch(e);

try

NV.shell=(UA.indexOf(\'360ee\')>-1)?\'360极速浏览器\':

(UA.indexOf(\'360se\')>-1)?\'360安全浏览器\':

(UA.indexOf(\'se\')>-1)?\'搜狗浏览器\':

(UA.indexOf(\'aoyou\')>-1)?\'遨游浏览器\':

(UA.indexOf(\'theworld\')>-1)?\'世界之窗浏览器\':

(UA.indexOf(\'worldchrome\')>-1)?\'世界之窗极速浏览器\':

(UA.indexOf(\'greenbrowser\')>-1)?\'绿色浏览器\':

(UA.indexOf(\'qqbrowser\')>-1)?\'QQ浏览器\':

(UA.indexOf(\'baidu\')>-1)?\'百度浏览器\':

\'未知或无壳\';

catch(e)

alert(\'浏览器UA=\'+UA+

\'\\n\\n浏览器名称=\'+NV.name+

\'\\n\\n浏览器版本=\'+parseInt(NV.version)+

\'\\n\\n浏览器外壳=\'+NV.shell);

);

2.jQuery插件

(function($)

/*

判断浏览器名称和版本

目前只能判断:ie/firefox/chrome/opera/safari

2012年5月16日23:47:08

浏览器内核UA:$.NV(\'ua\');或$.NV(\'UA\');

浏览器内核名称:$.NV(\'name\');或$.NV();

浏览器内核版本:$.NV(\'version\');

浏览器外壳名称:$.NV(\'shell\');

*/

$.extend(

NV:function(name)

var NV = ;

var UA = navigator.userAgent.toLowerCase();

try

NV.name=!-[1,]?\'ie\':

(UA.indexOf("firefox")>0)?\'firefox\':

(UA.indexOf("chrome")>0)?\'chrome\':

window.opera?\'opera\':

window.openDatabase?\'safari\':

\'unkonw\';

catch(e);

try

NV.version=(NV.name==\'ie\')?UA.match(/msie ([\\d.]+)/)[1]:

(NV.name==\'firefox\')?UA.match(/firefox\\/([\\d.]+)/)[1]:

(NV.name==\'chrome\')?UA.match(/chrome\\/([\\d.]+)/)[1]:

(NV.name==\'opera\')?UA.match(/opera.([\\d.]+)/)[1]:

(NV.name==\'safari\')?UA.match(/version\\/([\\d.]+)/)[1]:

\'0\';

catch(e);

try

NV.shell=(UA.indexOf(\'360ee\')>-1)?\'360极速浏览器\':

(UA.indexOf(\'360se\')>-1)?\'360安全浏览器\':

(UA.indexOf(\'se\')>-1)?\'搜狗浏览器\':

(UA.indexOf(\'aoyou\')>-1)?\'遨游浏览器\':

(UA.indexOf(\'theworld\')>-1)?\'世界之窗浏览器\':

(UA.indexOf(\'worldchrome\')>-1)?\'世界之窗极速浏览器\':

(UA.indexOf(\'greenbrowser\')>-1)?\'绿色浏览器\':

(UA.indexOf(\'qqbrowser\')>-1)?\'QQ浏览器\':

(UA.indexOf(\'baidu\')>-1)?\'百度浏览器\':

\'未知或无壳\';

catch(e)

switch(name)

case \'ua\':

case \'UA\':br=UA;break;

case \'name\':br=NV.name;break;

case \'version\':br=NV.version;break;

case \'shell\':br=NV.shell;break;

default:br=NV.name;

return br;

);

)(jQuery);

$(function()

alert(\'浏览器UA=\'+$.NV(\'UA\')+

\'\\n\\n浏览器名称=\'+$.NV(\'name\')+

\'\\n\\n浏览器版本=\'+parseInt($.NV(\'version\'))+

\'\\n\\n浏览器外壳=\'+$.NV(\'shell\'));

);

参考技术A js判断后跳转就行了,但是你这个方法基本上不可行,原因很简单,就IE本身就有6/7/8/9/10不同的版本,每个版本也都有区别,然后浏览器除了你用的chrome,还有更常见的firefox,你难道要逐一处理,如果想在不同浏览器下兼容,最主要的是要通过html的兼容性检查,有很多网站和工具,百度一下 13个网页浏览器验证及兼容性测试工具本回答被提问者和网友采纳 参考技术B 如果不依靠js,貌似做不到吧,除非用条件注释,但是效果肯定不如js判断

以上是关于如何用html判断浏览器内核的主要内容,如果未能解决你的问题,请参考以下文章

如何用javascript判断用的是啥浏览器

判断浏览器内核

根据浏览器内核判断是web/iOS/android/ipad/iphone 来打开不同的网站或页面

js 通过浏览器直接打开应用程序(IOS,Android)并判断浏览器内核

如何用css写渐变色。

如何用Web技术开发Windows Form应用