0

JLRiche 的更新

html结构如下(这里是整个div id=content_body_right的结构):

    <div id="content_body_right">
        <p class="user_text">Tim Flanagan</p><p class="date_text">02-06-2013 @ 12:00PM</p>
                <p class="message_text">Playin Augusta today. What a beautiful course!</p>
                <div id="activity_image">
                    <img src="images/activities/1/actimg.jpg" width="435" />
                </div>
                <div id="tips">
                    <div id="tip_cap_left">
                        <a href="dashboard.php?captip=tipyourcap" title="Tip Your Cap" ></a>
                    </div>
                    <div id="tip_cap_right">
                        <p class="tips_right">12 Tips of the Cap</p>
                    </div>
                </div>
                <p class="comments_label">
                    4 Comments&nbsp;&nbsp;&nbsp;
                    <a href="#" class="see_all" style="display:inline-block" title="See All Comments">see all</a>
                    <a href="#" class="collapse" style="display:none" title="Collapse Comments">collapse</a>
                </p>
                <div id="comment1">
                    <div id="comment_user_img">
                        <img src="images/defaultuserimg.jpg" width="30" height="30" />
                    </div>
                    <div id="comment_user">
                        <p class="user_text_comment">Tim Flanagan</p><p class="date_text_comment">02-06-2013 @ 12:00PM</p>
                        <p class="message_text_comment">Nice jealous of you bro.</p>
                    </div>
                </div>
                <div class="comment2" style="display:none; clear:both; margin:0px; overflow:auto">
                    <div id="comment2_sub">
                        <div id="comment_user_img">
                            <img src="images/defaultuserimg.jpg" width="30" height="30" />
                        </div>
                        <div id="comment_user">
                            <p class="user_text_comment">Tim Flanagan</p><p class="date_text_comment">02-06-2013 @ 12:00PM</p>
                            <p class="message_text_comment">Nice jealous of you bro.</p>
                        </div>
                    </div>
                    <div id="comment2_sub"> 
                        <div id="comment_user_img">
                            <img src="images/defaultuserimg.jpg" width="30" height="30" />
                        </div>
                        <div id="comment_user">
                            <p class="user_text_comment">Tim Flanagan</p><p class="date_text_comment">02-06-2013 @ 12:00PM</p>
                            <p class="message_text_comment">Nice jealous of you bro.</p>
                        </div>
                    </div>
                    <div id="comment2_sub">                  
                        <div id="comment_user_img">
                            <img src="images/defaultuserimg.jpg" width="30" height="30" />
                        </div>
                        <div id="comment_user">
                            <p class="user_text_comment">Tim Flanagan</p><p class="date_text_comment">02-06-2013 @ 12:00PM</p>
                            <p class="message_text_comment">Nice jealous of you bro.</p>
                        </div>
                    </div>
                </div>
    </div>

如果您需要更多结构,请告诉我,因为它上面和下面有很多。希望这可以帮助。我真的很感谢你的帮助!

结束更新

大家晚上好,

我需要为 X 个数据库结果中的每个动态创建 X 个 jquery 脚本。X 表示数字会有所不同。这是一种论坛类型的东西,您可以在其中看到原始帖子并显示一个回复,然后单击“查看全部”或“全部折叠”以查看或折叠其余内容。我正在使用典型的 $i 变量在 foreach 循环中增加我的 html 元素,因此我还需要为每个循环输出 jquery click 函数。

我需要 PHP 创建的代码如下:

$jquery .= "$('#see_all$i').click(function () {
    $('#comment2_$i').slideDown('fast');
    $('#collapse$i').css('display', 'inline-block');
    $('#see_all$i').css('display', 'none');
    return false;
});

$('#collapse$i').click(function () {
    $('#comment2_$i').slideUp('fast');
    $('#collapse$i').css('display', 'none');
    $('#see_all$i').css('display', 'inline-block');
    return false;
})";

任何帮助将永远将不胜感激!

谢谢

4

2 回答 2

2

恕我直言,为相同的 jQuery 代码生成多个略有不同的副本并不是一个很好的设计。您应该以一种只需要在您的页面中出现一次的方式编写您的 jQuery 代码,例如:

$('.see_all').click(function(){
     var thisItem = $(this);
     thisItem.parent().find('.comment').slideDown('fast');
     thisItem.parent().find('.collapse').css('display','inline-block');
     thisItem.css('display','none');
     return false;
}); 

$('.collapse').click(function(){
     var thisItem = $(this);
     thisItem.parent().find('.comment').slideUp('fast');
     thisItem.css('display','none');
     thisItem.parent().find('.see_all').css('display','inline-block');
     return false;
})";

当然,这也涉及向相关的 HTML 元素添加collapsesee_all和类。comment

于 2013-02-09T05:39:27.907 回答
0

html:

<div class="seeall" data-elid="1">...</div>
...
<div class="collapse" data-elid="1">...</div>
...

js:

var $bdy=$(document.body)
$bdy.on("click",".seeall",function(e) {
      var el=$(this).css('display','none').data("elid");
      $('#comment2_'+el).slideDown('fast');
      $('.collapse[data-elid="'+el+'"]').css('display','inline-block');
     })
     .on("click",".collapse", function(e) {
               //same same
     });
于 2013-02-09T05:35:43.333 回答