gpt4 book ai didi

javascript - 满足 PHP 条件时显示弹出窗口

转载 作者:行者123 更新时间:2023-11-30 11:58:30 28 4
gpt4 key购买 nike

我有以下项目,我已经使用了一段时间。正如您在运行 snnipets 后看到的那样,一切正常。

/* The dark background behind the dialogs */

.dialog-overlay{
display: none;
position: fixed;
top:0;
left:0;

width: 100%;
height: 100%;
background-color: rgba(0,0,0,0.3);

z-index: 10;
}

/* The dialogs themselves */

.dialog-card{
box-sizing: border-box;
width: 570px;
position: absolute;
left: 50%;
margin-left: -285px;
top: 50%;

font: bold 14px sans-serif;

border-radius: 3px;
background-color: #ffffff;
box-shadow: 1px 2px 4px 0 rgba(0, 0, 0, 0.12);
padding: 45px 50px;
}

.dialog-card .dialog-question-sign{
float: left;
width: 68px;
height: 68px;
border-radius: 50%;
color: #ffffff;
text-align: center;
line-height: 68px;
font-size: 40px;
margin-right: 50px;
background-color: #b4d8f3;
}

.dialog-card .dialog-info{
float: left;
max-width: 350px;
}

.dialog-card h5{ /* Dialog title */
color: #383c3e;
font-size: 24px;
margin: 5px 0 30px;
}

.dialog-card p{ /* Dialog text */
color: #595d60;
font-weight: normal;
line-height: 21px;

margin: 30px 0;
}

.dialog-card .dialog-confirm-button,
.dialog-card .dialog-reject-button{
font-weight: inherit;
box-sizing: border-box;
color: #ffffff;
box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.12);
padding: 12px 40px;
border: 0;
cursor: pointer;
outline: 0;
}

.dialog-card .dialog-confirm-button{
background-color: #87bae1;
margin-right: 12px;
}

.dialog-card .dialog-reject-button{
background-color: #e4749e;
}

.dialog-card button:hover{
opacity:0.96;
}

.dialog-card button:active{
position:relative;
bottom:-1px;
}
<div id="my-confirm-dialog" class="dialog-overlay">

<div class="dialog-card">

<div class="dialog-question-sign"><i class="fa fa-question"></i></div>

<div class="dialog-info">

<h5>Are you sure?</h5>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed pharetra id odio a pellentesque. In dapibus maximus augue, eu dapibus felis laoreet non.</p>

<button class="dialog-confirm-button">Yes</button>
<button class="dialog-reject-button">No</button>

</div>

</div>

</div>


<span class="dialog-show-button" data-show-dialog="my-confirm-dialog">Show Confirm Dialog</span>


<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<script>

// This is an example jQuery snippet that makes the dialogs work

$(document).ready(function() {

// We have two control functions that show or hide dialogs

function showDialog(id){

// Find the dialog and show it

var dialog = $('#' + id),
card = dialog.find('.dialog-card');

dialog.fadeIn();

// Center it on screen

card.css({
'margin-top' : -card.outerHeight()/2
});

}

function hideAllDialogs(){

// Hide all visible dialogs
$('.dialog-overlay').fadeOut();

}

// Here is how to use these functions

$('.dialog-confirm-button, .dialog-reject-button').on('click', function () {

// Hide the dialog when the confirm button is pressed
hideAllDialogs();

});

$('.dialog-overlay').on('click', function (e) {

if(e.target == this){
// If the overlay was clicked/touched directly, hide the dialog
hideAllDialogs();
}


});

$(document).keyup(function(e) {

if (e.keyCode == 27) {
// When escape is pressed, hide all dialogs

hideAllDialogs();
}

});


// Here, we are listening for clicks on the "show dialog" buttons,
// and showing the correct dialog

$('.dialog-show-button').on('click', function () {

// Take the contents of the "data-show-dialog" attribute
var toShow = $(this).data('show-dialog');

showDialog(toShow);
});
});

</script>

除了能够在单击 Show Confirm Dialog 后显示弹出窗口外,我还希望能够在满足 PHP 条件 时显示弹出窗口。喜欢:

if(condition){

//Display Popup

}

请帮我解决这个问题

最佳答案

假设 php 应该与 html、js、...在同一个脚本中:

<?php
if(1===1) {
echo "<script>";
echo "showDialog('my-confirm-dialog');";
echo "</script>";
}
?>

这需要放在你的 html 的最后,否则它会失败,因为 DOM 没有加载,等等......

为了确保您可以将它放在 $(document).ready 中:

 <script>
$(document).ready(function() {
// leave the function-definitions and eventlisteners here
//...

// add at the very end:
<?php
if(1===1) {
echo "showDialog('my-confirm-dialog');";
}
?>

});
</script>

另一个解决方案是根据 php-condition 只设置一个 js-var,并在 js 中检查它。

关于javascript - 满足 PHP 条件时显示弹出窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37242149/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com