我需要在两种(称为三种)情况下启动 jQuery Overlay:
- 从 HTML 按钮(使用
rel
attr.) - 从 PHP 调用时
- (2a) (保持打开状态)在 $_POST 提交之后。
对于(1)和(2)我试过这个:
//my js func
function triggerOverlay(elem){
if(!elem){
elem = "button[rel]";
load = false;
}else{
load = true;
}
$(elem).overlay({
top : 'center',
closeOnClick: false ,
load : load ,
speed : 0,
});
};
//call from html file
<script type="text/javascript">
$(document).ready(function() {
<?php
//I'm calling Launch::init(); from where I need to launch it, and it sets self::$open_overlay = TRUE;
if(Launch::$open_overlay){
echo 'var elem = "#orderOverlay";'."\r\n";
}
?>
if(!elem){
var elem = false;
}
triggerOverlay(elem);
});
</script>
这个问题是 var elem在我调用 PHP 后会阻止使用按钮Launch::init()
。所以,我需要另一种方法,它可以让我同时使用手动和自动启动 jQuery Overlay。
然后,我将处理步骤 (3)-> 在提交表单后重新加载页面时,我将发送与 (2) 相同的命令。