标题说明了一切。在任何其他浏览器中都能很好地工作,但在IE8和IE9中,show()方法无效......
以下是在代码中设置blockUI模式的方法:
$.blockUI({
uniqueName: 'the-modal-that-will-not-show',
focusInput: false,
message: foo_html,
css: {
padding: 0,
margin: 0,
top: '50%',
left: '50%',
'margin-top': '50px',
'margin-left': '275px',
textAlign: 'left',
color: '#000',
position: 'absolute',
width: '530px',
'z-index': 2300,
left: '0px',
top: '10px'
},
overlayCSS: {
'z-index': 2299,
opacity: 0.5
}
});
无论我把它放在哪里
$('#the-modal-that-will-not-show').show()
......它只是不会显示。如果我在IE中打开Javascript控制台并实际输入该命令,则模式将显示,但是在错误的位置并且某些输入未正确格式化。
奇怪的是,我用警告包围了.show()命令,告诉我模态是否可见。在.show()命令之前,它告诉我“false”,并在它说“true”之后,即使它实际上没有出现在屏幕上。
我还尝试将所有CSS内容放在引号中,例如'padding':'0'等。没有什么区别。
思想???
答案 0 :(得分:-1)
我发现了这个问题:
在$ .unblockUI命令之后立即调用包含此模态的函数,IE在$ .unblockUI完成之前执行代码。如果我在那里延迟,它可以正常工作。