当我想检测IE时,我使用此代码:
function getInternetExplorerVersion()
{
var rv = -1;
if (navigator.appName == 'Microsoft Internet Explorer')
{
var ua = navigator.userAgent;
var re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
if (re.exec(ua) != null)
rv = parseFloat( RegExp.$1 );
}
return rv;
}
function checkVersion()
{
var msg = "You're not using Internet Explorer.";
var ver = getInternetExplorerVersion();
if ( ver > -1 )
{
msg = "You are using IE " + ver;
}
alert( msg );
}
Run Code Online (Sandbox Code Playgroud)
但IE11正在返回"你没有使用Internet Explorer".我该如何检测它?
debugging internet-explorer browser-detection forward-compatibility internet-explorer-11
虽然两者都是基于Webkit的浏览器,但是在URL中的Safari urlencodes引号却没有.
因此我需要在JS中区分这两者.
jQuery的浏览器检测文档将"safari"标记为已弃用.
有没有更好的方法,或者我现在只是坚持使用已弃用的值?
我不想让用户使用Microsoft Internetexplorer(任何版本)访问我的网站.
到目前为止我发现的是检测它是否低于或等于10版本.
一个非常令人讨厌的事情:Internetexplorer> v10不承认自己是一名InternetExplorer.
到目前为止我发现并尝试过的内容:
if(navigator.appVersion.indexOf("MSIE")!=-1){
alert("You use IE. That´s no good.");
}
Run Code Online (Sandbox Code Playgroud)
要么
if ( $.browser.msie ) {
alert( $.browser.version );
}
Run Code Online (Sandbox Code Playgroud)
和
http://msdn.microsoft.com/en-us/library/ie/ms537509%28v=vs.85%29.aspx
如果有javascript,jquery或php,我会使用任何解决方案.
只是偶然发现了一个问题.当尝试使用Jquery检测IE 11(目前正在播出的测试版)时,结果为'firefox'.相同的代码检测IE 10.我需要知道用户正在使用什么浏览器才能显示不同的指令.
我在Oracle VirtualBox中测试是否重要.操作系统是Win 7.
这是代码:
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
<script>
var browser = function() {
if ($.browser.msie) return "ie";
var ua = navigator.userAgent.toLowerCase();
if ($.browser.mozilla/* && /firefox/.test(ua)*/) return "firefox";
if (/chrome/.test(ua)) return "chrome";
return /*"#"*/'unknown';
} ();
alert (browser); // This return firefox
alert ($.browser.version); // This returns 11.0 - the CORRECT version of IE
</script>
Run Code Online (Sandbox Code Playgroud)
如您所见,Jquery可以找到浏览器版本,但不能找到浏览器名称.知道如何绕过它吗?
您好我想检测浏览器,IE 8或更多将适合我.为此,我使用了以下代码,但IE11失败了.对于其他正确的检测.
function getInternetExplorerVersion()
{
var rv = -1; // Return value assumes failure.
if (navigator.appName == 'Microsoft Internet Explorer') {
var ua = navigator.userAgent;
var re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
if (re.exec(ua) != null)
rv = parseFloat(RegExp.$1);
}
return rv;
}
Run Code Online (Sandbox Code Playgroud)
以下是我尝试但无法成功的链接.
javascript asp.net internet-explorer browser-detection internet-explorer-11
我有一个父元素,包含两个子元素,使用flexbox显示在彼此之上.此父元素的max-height属性设置为特定值.因此,只要内容很短,父元素应该保持较小,随着内容的增长,父元素随之增长,直到满足其最大高度.此时我们应该在内容元素上看到滚动条.
#container {
display: flex;
max-width: 80vw;
max-height: 100px;
flex-direction: column;
}
#content {
overflow-y: auto;
}
/* styling - ignore */
#container {
border: 2px solid black;
margin-bottom: 1em;
}
#header {
background-color: rgb(245, 245, 245);
padding: 10px;
}
#content {
background-color: rgb(255, 255, 255);
padding: 0 10px;
}Run Code Online (Sandbox Code Playgroud)
<div id="container">
<div id="header">Header</div>
<div id="content">
<p>Everything works as supposed to, move along</p>
</div>
</div>
<div id="container">
<div id="header">Header</div>
<div id="content">
<p>Very long content</p>
<p>Very long content</p>
<p>Very long content</p> …Run Code Online (Sandbox Code Playgroud)