我有一个加载在dataTable中的帖子列表,我有一个表单将一个新的帖子添加到“墙”中。
我想做一些像Facebook的墙,所以,当我插入一个新的帖子,我想有一个褪色的效果,当它出现。
我尝试过使用PrimeFaces的效果,但是它会将效果应用于整个DataTable,所以我想使用一个简单的JQuery脚本,但我不知道如何做到。
下面是我最后一次尝试的简单代码(不起作用!):
<script type="text/javascript">
function animateNewPost(id) {
jQuery('#post_' +id).effect("slide", { direction: "right" }, 2000);
}
</script>
[cut]
<p:commandLink ajax="true" action="#{postBean.insertPost(loginBean.user)}" value="Insert Post" update=":postMessage, :postList, :postForm" oncomplete="animateNewPost(#{lazyPostBean.posts.get(0).getIdPost()})"/>
[cut]
<p:dataTable id="postTable" var="post" value="#{lazyPostBean.posts}">
<p:column style="border: 0px; background: rgba(0,0,0,0);">
<div class="feature">
<div class="post_#{post.idPost}">
[POST CONTENT]
</div>
</div>
</p:column>
</p:dataTable>我该怎么做?
编辑: id正确地传递给javascript函数,Post的div的HTML输出是
<div class="post_24">所以我想这是对的。
发布于 2012-03-28 14:23:21
首先,您应该从#中修复jquery选择器,该选择器的目标是将元素ID转换为引用类的. (单点),如下面的jQuery('.post_
https://stackoverflow.com/questions/9909347
复制相似问题