Я пытаюсь включить оверлей, чтобы быть модальным. Он отлично работает в FireFox, но объект окна находится за маской, когда он становится модальным. Это предотвращает любое взаимодействие с ним, и страница фактически бесполезна. Я попытался отлаживать это некоторое время и не могу понять это.jQuery tools modal overlay display problem в IE6-8
Вот ссылка на пример на их сайте: http://flowplayer.org/tools/demos/overlay/modal-dialog.html
$.fn.cfwindow = function(btnEvent,modal,draggable){
//error checking
if(btnEvent == ""){
alert('Error in window :\n Please provide an id that instantiates the window. ');
}
if(!modal && !draggable){
$('#'+btnEvent+'[rel]').overlay();
$('#content_overlay').css('cursor','default');
}
if(!modal && draggable){
$('#'+btnEvent+'[rel]').overlay();
$('#content_overlay').css('cursor','move');
$('#custom').draggable();
}
if(modal){
$('#'+btnEvent+'[rel]').overlay({
// some mask tweaks suitable for modal dialogs
mask: {
color: '#646464',
loadSpeed: 200,
opacity: 0.6
},
closeOnClick: false
});
$('#content_overlay').css('cursor','default');
$('#custom').addClass('modal');
}
};
Вот что я ссылки, когда я звоню через:
<script type="text/javascript">
$(document).ready(function(){
$(document).pngFix();
var modal = <cfoutput>#attributes.modal#;
var drag = #attributes.draggable#;
var btn = '#attributes.selector#';
var src = '#attributes.source#';
var wid = '#attributes.width#';
$('##custom').width(parseInt(wid));
$('div##load_content').load(src);
$('##custom').cfwindow(btn,modal,drag,wid);
});
</script>
CSS для модального:
<style type="text/css">
.modal {
display:none;
text-align:left;
background-color:#FFFFFF;
-moz-border-radius:6px;
-webkit-border-radius:6px;
}
</style>
Исключить и дополнительные знаки фунта, IE. "##".
Снимок экрана проблемы: http://twitpic.com/1tak06
Примечание: IE6 и IE8 имеют те же проблемы.
Любая помощь будет оценена по достоинству.
Update: HTML of the overlay/modal window:
<div class="simple_overlay" id="custom">
<div id="content_overlay">
<div id="handler">
<div id="headerss">
<h5 class="titless"><span style="color:##000000;">#attributes.title#</span></h5>
<div class="yellowRule"></div>
</div>
<div id="load_content">
</div>
</div>
</div>
</div>
Обновлено: Добавить передний конец
<!-- overlay triggers. overlay is referenced in the 'rel' attribute -->
<p>
<button rel="#custom" type="button" id="openWindow">Email</button>
</p>
<cf_eo_window2
title="This modal isn't working in IE!"
selector="openWindow"
draggable="false"
width="350"
modal="true"
source="import-test.cfm"
/>
Да. Я уже пытался добавить z-index. Я добавлю HTML прямо сейчас. –
Ничего себе, это много divs. Ваша проблема может заключаться в том, что вы вложили свой модальный div в свой оверлейный div. Красота модальных скриптов заключается в том, что она вообще игнорирует структуру, если она знает, где получить содержимое, IE - форму и наложение. Попытайтесь вытащить часть, которая является вашим модальным, и посмотрите, получите ли вы лучшие результаты. – edl
Спасибо за ввод. Я пробовал это, и это не влияет. Кроме того, каждый набор divs играет определенную роль в пользовательском дизайне окна. Я попытался разбить его на основы и, тем не менее, все равно ничего. –