Это убивает меня. И в IE7, и в 8, используя jqModal, экран мигает черным перед загрузкой модального содержимого. Я создал тестовое приложение, чтобы показать вам, что происходит. Я взял jqModal именно с сайта, никаких изменений, никаких внешних CSS, которые могли бы повлиять на мое приложение. Он отлично работает в любом другом браузере (включая IE6).
http://jqmtest.heroku.com/
Итак, первые две ссылки - это вызовы ajax, вторая - прямой встроенный HTML. (Первоначально я думал, что это влияет на ajax, но, похоже, это не так, потом я подумал, что это медленная загрузка ajax, следовательно, на две разные ссылки ajax)
Что сумасшедшего, так это то, что сам сайт jqmodal отлично работает в IE, без мерцания черного, но я не вижу, что я делаю неправильно. Код прямой
HTML:
<body>
<div id="ajaxModal" class="jqmWindow"></div>
<div id="inlineModal" class="jqmWindow">
<div style="height:300px;position:relative;">
<p>Here's some inline content</p>
<a href="#" onclick='$("#inlineModal").jqmHide();return false;' style="position:absolute;bottom:10px;right:10px">Close</a>
</div>
</div>
<div style="width:600px;height:400px;margin:auto;background:#eee;">
<p><a href="/ajax/short" class="jqModal">Short loading modal</a></p>
<br />
<p><a href="/ajax/long" class="jqModal">Longer loading modal</a></p>
<br />
<p><a href="#" class="jqInline">inline modal</a></p>
</div>
</body>
Javascript:
<script type="text/javascript">
$(function(){
$("#ajaxModal").jqm({ajax:'@href', modal:true});
$("#inlineModal").jqm({modal:true, trigger:'.jqInline'});
});
</script>
CSS точно такой же, как тот, который был загружен с сайта jqModal, поэтому я его опущу, но вы можете увидеть его в моем приложении
Кто-нибудь испытывал это? Я не понимаю, как он работает, а мой нет.