0

我继承了一个使用jQuery Quicksand 插件进行数据过滤的站点。

我在 IE10 中遇到了一些问题。过渡动画似乎没有触发。排序立即发生。此外,在排序完成后应该触发的回调函数不会触发。< IE10 和我测试过的所有其他浏览器中一切都很好。

控制台中没有错误,也没有任何关于失败的迹象。

有没有人找到问题的根源?

问题演示

   function testFunction(){
       alert('test');
   }  

   $('.button').click(function(e) {

       $('.all').quicksand( $('.warm li'), {
           duration: 1000,
           attribute: 'id',
           adjustHeight:false
        },function(){
           testFunction();
        });
   });
4

1 回答 1

1

我追踪了这个问题。我会在这里发帖,以防它可能对其他人有所帮助。

线 ~64 V.1.2.2

if ($.browser.msie && $.browser.version.substr(0,1)<7) {
    $sourceParent.html('').append($collection);
    return;
}

substr 返回 1 导致插件退出。

我通过删除 substr 解决了这个问题(谁能解释为什么需要子字符串?):

if ($.browser.msie && $.browser.version<7) {
    $sourceParent.html('').append($collection);
    return;
}

这似乎工作正常。

插件的 Versin 1.3(我没有意识到存在)使用以下内容:

if ($.browser.msie && parseInt($.browser.version, 10) < 7) {
    $sourceParent.html('').append($collection);
    return;
}
于 2013-05-16T11:09:15.857 回答