我正在尝试将php回显到html,一切都很好,但回显一直保留在页面上,直到刷新结束。无论如何,我可以使用jquery来淡入淡出吗?
php编码的一部分:
$q1=mysql_query("SELECT `DEALS` FROM `show` LIMIT 1");
$d1=mysql_fetch_array($q1);
$n2=$d1['DEALS'];
if($n2!=0){
foreach($addresses as $to) {
mail($to, $subject, $message, $headers);
}
echo'<center><span class="text-wrapper-2 text-wrapper-green">Email Sent!
</span></center>';
}
else{
echo'<center><span class="text-wrapper-2 text-wrapper-red">Email Failed</span></center>';
}
所以上面的代码正确地回显到html,但我想添加一些jquery人脸效果。任何建议都会很棒。
提前感谢大家。
将其包装成一个div标记,其中包含一个可以选择的类
<div class="someClass" style="display:none"> your code here </div>
并有一个脚本标签,并将您的javascript放在这里
<script>
$(function(){
$('.someClass').fadeIn();
});
</script>
然后回显该代码
JavaScript交互完全发生在PHP完成后的客户端。因此,从本质上讲,您应该回显输出,然后进行客户端效果。假设你呼应了这样的东西:
<span class="text-wrapper-2 text-wrapper-green" id="emailMessage" style="display:none;">Email Sent!</span>
请注意,我在元素中添加了一个id
,以便于识别。我还给了它一个不显示的直列样式,因为你想让它先淡出。请随意将样式转换为CSS。
然后在你的客户端代码中,你可能会有这样的东西:
$('#emailMessage').fadeIn(400, function () {
setTimeout(function () {
$('#emailMessage').fadeOut();
}, 5000);
});
这将使元素淡入,然后设置一个计时器,使其在5秒后淡出。
这只是一种方法。但是对php脚本进行ajax调用,然后在淡入时显示结果。
<script type="text/javascript">
$(document).ready(function() {
$('.buttonPush').on('click', function() (
if (!$(this).hasClass('pushed'))
{
$('.buttonPush').addClass('pushed');
$.ajax('/link/to/php/page', {
}).done(function(data) {
$('.myElem').html('your html').fadeIn();
$('.buttonPush').removeClass('pushed');
});
}
));
});
</script>
<div class="myElem">
</div>