作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如果只满足 php 条件,如何运行 javascript?我试图仅在 $page_count
时显示弹出窗口是 <= 1
。 php 很好并且运行正确,因为我已经用简单的 echo 测试了它,只有当我尝试否定 javascript 运行时,如果 $page_count
超过 2 仍然可以运行。
有没有通用的方法来解决这个问题?
if ($page_count <= 1) {
$setup_popup =
'<div id="status-popup">
<div id="status-popup-container" class="total-center">
<a class="popup-close" data-popup-close="popup-1" href="#">Close</a>
</div>
</div>'
;
}
else {
$setup_popup = NULL;
}
Javascript
$('#status-popup').fadeIn(350);
$('[data-popup-close]').on('click', function(e) {
var targeted_popup_class = jQuery(this).attr('data-popup-close');
$('#status-popup').fadeOut(350);
$('body').css('overflow', 'auto');
e.preventDefault();
});
最佳答案
正如评论者所建议的,简单如下:
if(document.getElementById('status-popup')){
$('#status-popup').fadeIn(350);
$('[data-popup-close]').on('click', function(e) {
var targeted_popup_class = jQuery(this).attr('data-popup-close');
$('#status-popup').fadeOut(350);
$('body').css('overflow', 'auto');
e.preventDefault();
});
}
应该这样做。
如果需要,您还可以将 JavaScript 包含在 PHP if 语句中:
<?php
if ($page_count <= 1) {
?>
$('#status-popup').fadeIn(350);
$('[data-popup-close]').on('click', function(e) {
var targeted_popup_class = jQuery(this).attr('data-popup-close');
$('#status-popup').fadeOut(350);
$('body').css('overflow', 'auto');
e.preventDefault();
});
<?php
}
?>
关于javascript - 仅当满足 php 条件时才运行 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40917970/
我是一名优秀的程序员,十分优秀!