相关疑难解决方法(0)

如何检测IE11?

当我想检测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

207
推荐指数
7
解决办法
22万
查看次数

使用jQuery检测Safari

虽然两者都是基于Webkit的浏览器,但是在URL中的Safari urlencodes引号却没有.

因此我需要在JS中区分这两者.

jQuery的浏览器检测文档将"safari"标记为已弃用.

有没有更好的方法,或者我现在只是坚持使用已弃用的值?

javascript jquery browser-detection

109
推荐指数
4
解决办法
17万
查看次数

检测是否有任何类型的IE(MSIE)

我不想让用户使用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,我会使用任何解决方案.

javascript php jquery internet-explorer

49
推荐指数
3
解决办法
7万
查看次数

Jquery无法检测到IE 11

只是偶然发现了一个问题.当尝试使用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可以找到浏览器版本,但不能找到浏览器名称.知道如何绕过它吗?

jquery browser-detection internet-explorer-11

26
推荐指数
3
解决办法
4万
查看次数

如何在Asp.net中使用javascript检测IE 11

您好我想检测浏览器,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

17
推荐指数
5
解决办法
4万
查看次数

Flexbox子级溢出父级,IE上指定了max-height

我有一个父元素,包含两个子元素,使用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)

css internet-explorer css3 flexbox

7
推荐指数
1
解决办法
2348
查看次数