jQuery 过渡还是 CSS?
jQuery transitions or CSS?
我应该使用 CSS 转换还是 jQuery?
我看到一些 jQuery 插件同时使用了两者 jQuery 仅当浏览器不支持 CSS 转换时才使用。
这是怎么做到的?
插件可能正在检查浏览器版本。
Take a look here 了解支持 CSS 转换的浏览器概览。
您可以使用 JQuery 进行 JQuery 转换和 CSS 转换。
您可以运行检查用户的浏览器并执行类似这样的操作
var thing = $('#something');
var browserIsIE = function() {
return false;
}
if ( browserIsIE() ) {
thing.fadeOut();
}
else {
thing.addClass('hidden');
}
CSS:
#something{
transition: opacity 0.4s;
}
.hidden {
opacity: none;
}
请注意,这段代码实际上并不检查浏览器版本,但它处理如何淡化元素,您应该创建一个函数来检查您需要检查的任何内容!
如果您非常确定您的用户将使用最新版本的 chrome 或 Mozilla 或任何其他软件(不包括 IE),那么 CSS
也可以考虑作为一个选项。或者你也可以使用 JQuery
的版本,它也支持 IE。最好的组合是将两者用于网站将提供更好的结果。
Never ever use User Agent sniffing, rather use feature support/ detection. That is what god gave us Modernizr 对于.
Modernizr 将 CSS 类 添加到您的 html 中,具体取决于查看浏览器支持的技术。然后在你的 CSS 中你可以写:
.csstransitions #myelement { /* do css3 stuff */ }
并在 jQuery 中:
if (!$('html').hasClass('csstransitions')) { /* jQuery fallback */ }
我应该使用 CSS 转换还是 jQuery?
我看到一些 jQuery 插件同时使用了两者 jQuery 仅当浏览器不支持 CSS 转换时才使用。
这是怎么做到的?
插件可能正在检查浏览器版本。 Take a look here 了解支持 CSS 转换的浏览器概览。
您可以使用 JQuery 进行 JQuery 转换和 CSS 转换。
您可以运行检查用户的浏览器并执行类似这样的操作
var thing = $('#something');
var browserIsIE = function() {
return false;
}
if ( browserIsIE() ) {
thing.fadeOut();
}
else {
thing.addClass('hidden');
}
CSS:
#something{
transition: opacity 0.4s;
}
.hidden {
opacity: none;
}
请注意,这段代码实际上并不检查浏览器版本,但它处理如何淡化元素,您应该创建一个函数来检查您需要检查的任何内容!
如果您非常确定您的用户将使用最新版本的 chrome 或 Mozilla 或任何其他软件(不包括 IE),那么 CSS
也可以考虑作为一个选项。或者你也可以使用 JQuery
的版本,它也支持 IE。最好的组合是将两者用于网站将提供更好的结果。
Never ever use User Agent sniffing, rather use feature support/ detection. That is what god gave us Modernizr 对于.
Modernizr 将 CSS 类 添加到您的 html 中,具体取决于查看浏览器支持的技术。然后在你的 CSS 中你可以写:
.csstransitions #myelement { /* do css3 stuff */ }
并在 jQuery 中:
if (!$('html').hasClass('csstransitions')) { /* jQuery fallback */ }