Jquery使用php var和pause

时间:2013-08-09 08:05:57

标签: php jquery delay

我的php页面在页面顶部有任何jquery之前的一个名为$pause的php变量。 分配给它的值从数据库中读取。

我正在尝试使用jquery显示一个div,然后延迟$ pause值然后隐藏div。

这显示并隐藏了div,如何添加延迟?

$("#div1").show();
$("#div1").hide();

由于

3 个答案:

答案 0 :(得分:2)

为HTML元素添加$ pause ...例如body:

<body data-pause="<?=$pause?>" >

</body>

和js:

$("#div1").show();

setTimeout(function () {
    $("#div1").hide();
}, parseInt($('body').attr('data-pause'), 10));

答案 1 :(得分:2)

如果你可以在你的js中解析php,你可以echo

var pause = <?php echo $pause; ?>

如果没有,请将值附加到隐藏input等元素,以便您可以使用jquery访问该值。

然后你可以这样做:

$('#div1').show().delay(pause).hide(0);

注意:您需要将duration传递给hide()才能使delay()正常工作:

  

当提供持续时间,普通对象或“完整”功能时,.hide()成为动画方法

Here's a fiddle

答案 2 :(得分:-1)

如果你想保持你的javascript inline在你的html结尾处写这个

<script>
$("#div1").show(0).delay(<?php echo $pause; ?>).hide(0);
</script>

如果您不想将代码保持为内联,则可以向元素添加属性并使用该属性:

例如:

<div id="div1" delaytime="<?php echo $pause; ?>">Hello World</div>

最后使用下面的javascript:

$("#div1").show(0).delay(jQuery(this).attr('data-pause')).hide(0);