我是网络开发新手。我用谷歌搜索了这个问题,但没有找到结果。首先,请考虑以下代码:
<p id="par">Hello World</p>
如果您设置了 PHP,则以下内容有效:
<p id="par"><?php echo "Hello World";?></p>
两者产生相同的结果,但我记得PHP代码是在服务器中执行的,因此出现了以下关于代码执行的问题:
是<p></p>
首先从服务器检索元素,而某些后台 ajax 进程等待“Hello World”?
我真的很想知道,这样我就可以编写更可预测的代码。另一种可能困扰我的情况是使用 javascript 和/或 jQuery 时:
$(document).load(function(){
$("#foo").width($("#par").width());
});
这提出了一个问题,它是等待 PHP 服务器请求完成还是只是加载页面,因此,一些代码需要对 <p>
的大小使用react上面的元素会是一个错误吗?
再次请原谅初学者的问题。
最佳答案
PHP是服务器端程序语言。所有代码在返回客户端之前都会在服务器上进行处理。
我相信在你的情况下JavaScript是客户端部分。所以。
PHP 将首先生成 HTML。然后浏览器加载 HTML(已经包含“Hello World”)和 Javascript。最终 Javascript 将访问 #foo
DOM 元素。
但是这里可能会出现 JavaScript 先于 HTML 加载的情况。在这种情况下
$("#foo").width($("#par").width())
不会执行任何操作或抛出错误,因为尚不存在 #par 元素。要解决此问题,您必须确保 Javascript 在加载所有 HTML 后开始工作。为此,您可以使用:
$(document).load(function() {
$("#foo").width($("#par").width())
});
希望这对您有帮助。
关于javascript - 当 PHP 内联到 html(或其他 Web 文件)中时会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29554509/