jquery - 使用 jQuery.support 检测 IE6

标签 jquery browser-detection

有人对如何使用 jquery.support 测试 IE6(而不是 IE7)特定的内容有任何想法吗?

我的问题是 IE6 仅支持 anchor 元素的 :hover psuedo-class ,而 IE7 确实支持所有元素(如 FF、Chrome 等)。所以我想做一些特别的事情,以防浏览器不支持所有元素的 :hover...因此我需要一种方法来测试此功能。 (不想使用 jQuery.browser)。有什么想法吗?

最佳答案

虽然检查功能支持而不是用户代理是一种很好的做法,但没有简单的方法可以使用 JavaScript 检查 css 属性的支持等内容。我建议您遵循上面使用条件注释的海报建议或使用 jQuery.browser。一个简单的实现(未验证性能或错误)可能如下所示:

if ($.browser.msie && $.browser.version.substr(0,1)<7) {
  // search for selectors you want to add hover behavior to
  $('.jshover').hover(
    function() {
      $(this).addClass('over');
    },
    function() {
      $(this).removeClass('over');
    }
}

在标记中,将 .jshover 类添加到您想要悬停 CSS 效果的任何元素。在您的 CSS 中,添加如下规则:

ul li:hover, ul li.over { rules here }

关于jquery - 使用 jQuery.support 检测 IE6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/584285/

相关文章:

jquery - 使用 MVCContrib 的分层网格

javascript - (Javascript)所有浏览器的 "navigator.appName"值列表?

javascript - 如何检测 Safari、Chrome、IE、Firefox 和 Opera 浏览器?

javascript - json 加载为 javascript 代码并使用变量

javascript - Bootstrap - Yamm Mega 菜单 - 多下拉菜单

php - 如何使用 jquery 提交 PHP 表单?

JQuery 用于显示动态标签,例如 Hotmails 的电子邮件收件人?

Angularjs - 客户端浏览器指纹

javascript - "Feature detection"让我失望。浏览器检测的案例还是有更好的方法?

asp.net - 阻止 IE6 访问者