wordpress中php循环中的jQuery

wordpress中php循环中的jQuery,php,jquery,Php,Jquery,我在header.php上有这段代码 <!-- img Style --> <link href="<?php bloginfo('template_directory'); ?>/picanim files/picanim.css" rel="stylesheet" type="text/css" /> <script src="<?php bloginfo('template_directory'); ?>/picanim files/j

我在header.php上有这段代码

<!-- img Style -->
<link href="<?php bloginfo('template_directory'); ?>/picanim files/picanim.css" rel="stylesheet" type="text/css" />
<script src="<?php bloginfo('template_directory'); ?>/picanim files/jquery-1.7.2.min.js"></script>
<script src="<?php bloginfo('template_directory'); ?>/picanim files/jquery.picanim.min.js"></script>

<script type="text/javascript">
$.noConflict();
jQuery(document).ready(function($){
            $('#test1 img').picanim({initEf:'grayscale',hoverEf:'fadeIn'});

    });
</script>
<!-- img Style -->
“test1”
是我在
header.php的jQuery中定义的id
这个jQuery,灰度化我的图片,当鼠标悬停在图片上时,给它上色

有关此代码的更多详细信息,请单击此处:

我的问题是,我页面上的每一张图片都很容易使用这个jQuery 但是当我在php循环中调用它时,jquery不起作用

您正在使用id(
#test1
)在元素上运行jQuery函数。但是,当您在循环中运行它时,所有元素都使用相同的id,并且当这种情况发生时,id的jQuery选择器将无法选择文档上的特定元素

注意:在一个文档中不应该有多个具有相同
id
的元素

尝试使用类并使用该类触发jQuery函数

$('.test1 img').picanim({initEf:'grayscale',hoverEf:'fadeIn'});

这里的
test1
是一个类,对循环中的所有元素使用同一个类。

如果元素将被多次使用,则不能对其使用id。
要实现这一点,请尝试将id更改为class=“hm wrap”,然后在jQuery选择器中使用它。使用hm wrap作为插件css规则应用于该包装类。 即

$('.hm wrap img').picanim({initEf:'grayscale',hoverEf:'fadeIn'});
... 和

您的问题不够清楚,请重新措辞。另外,提供的链接也不起作用:(看看这个问题:对不起,我修复了链接和内容,再次抱歉类“test1”仍然不起作用!:(@user3098838告诉我你是如何编写php循环的?get_post_meta是一个有while循环的方法,是while循环的结尾!我的代码是正确的,是用wordpress编写的!类“测试1”仍然不起作用(我已经更新了我的答案。试试看是否有效。事实上,我认为这不会起作用,因为js正在用该类在图像周围包装一个div。不,它不起作用!我再说一遍:它在任何简单的标记中都很容易起作用,但在php循环中不起作用!!你的代码是否在线?或者你可以将输出放在JSFIDLE或codepen上因为这可能是一个css问题。除此之外,我实在无能为力,因为我看不出你发布的代码有任何问题(除了我在第一个答案中指出的问题)。
$('.test1 img').picanim({initEf:'grayscale',hoverEf:'fadeIn'});
$('.hm-wrap img').picanim({initEf:'grayscale',hoverEf:'fadeIn'});

... and ...

<div class="hm-wrap">