Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery在PHP完成之前运行_Php_Jquery_Css_Css Selectors - Fatal编程技术网

jQuery在PHP完成之前运行

jQuery在PHP完成之前运行,php,jquery,css,css-selectors,Php,Jquery,Css,Css Selectors,我在PHP中有一个for循环,它创建了四个div,每个都包含一个img和p字符串,如下所示: <div class="guest-tile-holder"> <img class="guest-tile" src="<?php echo($tile); ?>"> <p><span><?php echo($fn.' '.$ln); ?></span></p> &

我在PHP中有一个
for
循环,它创建了四个
div
,每个都包含一个
img
p
字符串,如下所示:

<div class="guest-tile-holder">             
    <img class="guest-tile" src="<?php echo($tile); ?>">
    <p><span><?php echo($fn.' '.$ln); ?></span></p>
</div>
$(document).ready(function() {
    $('p:nth-child(4)').css('color', 'black');
});
我所期望的是PHP将进行预处理,如上所述创建四个
div
,然后jQuery将第四个
div
中的
p
字符串涂成黑色。然而,实际发生的情况是jQuery似乎忽略了PHP,并为一个
p
字符串上色,该字符串在我的HTML中是另外三个
p
字符串

我总是相信PHP会进行预处理,因此我不明白为什么jQuery似乎在PHP完成之前运行


有人能告诉我在PHP完成后如何运行jQuery吗?

索引基于同一父元素中的元素,因此如果父元素在DOM中处于同一级别,则需要将其作为目标,并在该元素上使用第n个子元素选择器,然后找到段落并更改其CSS:

$('div.guest-tile-holder:nth-child(4)').find('p').css('color', 'black');

jQuery是在PHP代码之后正确执行的,只是没有选择正确的
p

p:n子项(4)
将选择作为层次结构中第四个元素的段落。例如,第一个
p
将是第三个元素,因为它前面有
div
img
。实际上,您要查找的是
p:nth类型(4)
。来宾磁贴持有者:nth子(4)
,甚至使用jQuery的自定义选择器:

$('.guest-tile-holder:eq(3) p').css('color', 'black');

(由于JavaScript数组使用基于零的索引,第4个元素有索引3。)

无需使用find,您只需执行以下操作:

$('div.guest-tile-holder:nth-child(4) p').css('color', 'black');

是的,你的客户端代码在服务器端代码完成之前运行,这太酷了!问题可能是段落不是您应该瞄准的元素,父div是,因为索引将在那里be@Ryan你能告诉我如何在PHP完成之前运行jQuery吗@乔纳森·罗默——不!OP错误地解释了正在发生的事情。在你至少尝试弄清楚发生了什么之前,千万不要尝试破解某些东西。为什么不尝试将jquery放在php代码之后?@user1463541-+1整天的最佳评论,真的让我崩溃了吗?大大简化了
.find()
示例。谢谢。最后,您的解释比示例代码更重要。我想我只需要了解第n个孩子是如何工作的,然后我才开始相信它没有像我希望的那样工作。谢谢