热搜:NVER node 开发 php

php中,用echo调用JS函数,有什么问题?

2024-09-16 10:35:01
php中,用echo调用JS函数,有什么问题?

<?php
     echo "";
?>

js函数:
function show_div(){
    document.getElementById("show").style.display="block";
}

//div 是隐藏的,想通过php调用JS的函数把div显示出来


回复讨论(解决方案)

调用当然没问题,你需要注意的是 js 函数的代码必须在 echo 之前输出就可以了.而你的id=show 的div 要在js 代码之前输出

div->js ->php echo jscode.

php->div->js  这样的顺序有可能实现吗?如果我把php放在最后又会对别的功能有影响...

php 输出调用js 的时候 div 和 js 代码都没有存在 它怎么执行? 
这不等于你在页面上直接打上



你觉得它会执行什么?

为什么我用echo "";
div 能显示出来?

直接用echo "";
的时候就不行,他们区别在哪?

页面执行是从上到下的。。你把div和js函数放到PHP页面就可以了。

setTimeout('show_div()',10) 
意思过10毫秒秒后调用show_div()函数。这个时候DOM自然也就加载完了。

抱歉,打错字了。

你把div和js函数放到PHP页面就可以了。
   ==》
你把div和js函数放到PHP代码上面就可以了。

页面执行是从上到下的。。你把div和js函数放到PHP页面就可以了。

setTimeout('show_div()',10)
意思过10毫秒秒后调用show_div()函数。这个时候DOM自然也就加载完了。
<?php
show();
function show()
{

echo 'hello word!';

}
?>

这个作何解释?

我们在讨论的是 div 和 js 在php里的输出执行,不是讨论php的函数,请看清楚.
照你这逻辑的话 就直接在php里写js 好了.

引用 5 楼 jordan102 的回复:
页面执行是从上到下的。。你把div和js函数放到PHP页面就可以了。

setTimeout('show_div()',10)
意思过10毫秒秒后调用show_div()函数。这个时候DOM自然也就加载完了。

<?php
show();
function show()
{

echo 'hello word!';

}
?……

解释啥? 你这个是php, 楼上是js/html

引用 5 楼 jordan102 的回复:
页面执行是从上到下的。。你把div和js函数放到PHP页面就可以了。

setTimeout('show_div()',10)
意思过10毫秒秒后调用show_div()函数。这个时候DOM自然也就加载完了。

<?php
show();
function show()
{

echo 'hello word!';

}
?……

估计是你的echo 在JS之前输出了··那个时候show_div 函数还没执行··,你延时10秒,页面加载完成,JS函数自然就有了
你把ECHO放到文件末尾看看

谢谢大家,已经弄明白了  

请问你是怎么解决的?