使用 jQuery fadeIn 时 IE 文本模糊
我使用IE使用jQuery Fadein有问题,由于“过滤器”,文本是频线的。我在这里搜索并找到了此解决方案:
jQuery.fn.fadeIn = function(speed, callback) {
return this.animate({opacity: 'show'}, speed, function() {
if (jQuery.browser.msie)
this.style.removeAttribute('filter');
if (jQuery.isFunction(callback))
callback();
});
};
问题是现在我收到以下错误:
未熟练的连击:最大呼叫堆栈大小超过
我以几种方式称为Fadein函数:
$('.item').fadeIn();
$('.item').fadeIn(50);
$('.item').fadeIn(function(){
});
$('.item').delay(500).fadeIn();
$('.item').hide().fadeIn();
我不确定问题在哪里,但是我猜这是链接或使用回调而无需指定速度吗?
有人会知道可以使这种兼容的解决方案吗?
谢谢你!
I'm having issues with IE using jQuery fadeIn where text is blury due to the 'filter'. I've searched here and found this solution:
jQuery.fn.fadeIn = function(speed, callback) {
return this.animate({opacity: 'show'}, speed, function() {
if (jQuery.browser.msie)
this.style.removeAttribute('filter');
if (jQuery.isFunction(callback))
callback();
});
};
The problem is that now I get the following error:
Uncaught RangeError: Maximum call stack size exceeded
I call the fadeIn function in a few ways, like this:
$('.item').fadeIn();
$('.item').fadeIn(50);
$('.item').fadeIn(function(){
});
$('.item').delay(500).fadeIn();
$('.item').hide().fadeIn();
I'm not exactly sure where the issue is, but I'm guessing it's with chaining it or using the callback without specifying speed?
Would anyone know a solution that will make this compatible?
Thank you!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
试试这个(需要 jquery 1.6+):
我怀疑问题是在太多元素上调用了 if 语句。使用完整回调在每个元素上运行回调,而使用 Promise 方法在所有元素完成时运行回调。
try this (requires jquery 1.6+):
i suspect the issue was the if statements were being called on too many elements. using the complete callback runs the callback on each element, while using the promise method runs it when all elements are done.