jquery fadeToggle没有处理echoed脚本

时间:2013-07-14 08:55:12

标签: php javascript jquery

我有一个div,其内容通过$ .post()检索异步。 检索到的内容是多个图像,每个图像都有单独的ID。 我希望每个图像都能在hover()

上淡出

所以我在现场计算我的php中的图像ID,生成图像并添加一个jquery处理程序 并回复结果:

<script type="text/javascript">
$(document).ready(function ()
    {
        $("<?php echo '#'.$postid.'image'; ?>").hover(function()
            {
                $(this).fadeToggle("fast");
            },
            function()
            {
                $(this).fadeToggle("fast");
            });

    });

HTML:

<div id="<?php echo $postid; ?>" class="post_box" > 
<img src="<?php echo '/way2tweek'.$path.$name; ?>" width="500" class="img_get"   
draggable="false" alt="<?php echo $postid; ?>" id="<?php echo $postid.'image'; ?>">
<div class="imageproperty" id="<?php echo $postid.'props'?>">

</div>
</div>

在页面上收到图像。收到脚本。计算的ID匹配,但图像不是fadeToggled。没有控制台调试消息。请帮忙。

1 个答案:

答案 0 :(得分:2)

PHP生成的选择器中有哈希和点:

<?php echo '#'.$postid.'.image'; ?> 

生成一个类似

的字符串
#mypostid.image

我不知道您的HTML结构,但您可能希望选择器为#mypostid .image(请注意空格),所以:

<?php echo '#'.$postid.' .image'; ?>