用户界面-类方法中的Jquery隐藏函数使IE失败



我已经编写了一个javascript模块(div对象),如果您使用Jquery UI显示和隐藏函数在输入元素内部单击,该模块将从右侧滑入文档。这在除IE8之外的大多数浏览器中都能正常工作。

问题是,当模块隐藏起来时,IE8就不会再打开它了。

经过大量的工作,我终于发现了一些奇怪之处。当我运行以下代码作为按钮元素的onclick函数来隐藏模块时,我可以再次打开它。

$('#segitseg').hide('drop', { direction: 'right' }, 600);

但如果我从一个名为Segitseg的对象调用同一行(在英语中它的意思是帮助),如下所示:

var Segitseg = new function () {
    ...
    this.bezar = function() {
        $('#segitseg').hide('drop', { direction: 'right' }, 600);
    }
    ...
}

那么我就无法再次打开模块。

但我应该使用第二种变体,因为bezar方法也应该制作其他东西。

有人遇到这个问题吗?

尝试使用:$(document).ready(function() {});

我发现了问题

好吧,当你对一个元素调用hide()时,它会改变它的不透明度,或者更重要的是它的alpha不透明度,这是IE8使用的。所以元素将是不可见的。

解决方案:(在hide()函数结束后更改回不透明度)

$('#segitseg').hide('drop', { direction: 'right' }, 600, function(){
    $('#segitseg').css('filter', 'alpha(opacity=100)');
});

相关内容

  • 没有找到相关文章

最新更新