Javascript jQuery实时垂直新闻报价器。。。

Javascript jQuery实时垂直新闻报价器。。。,javascript,jquery,html,ajax,Javascript,Jquery,Html,Ajax,我对jQuery和Ajax还很陌生,我希望能从社区得到一些支持/帮助。基本上,我正在尝试为一些预先确定的新闻源创建一个“facebook esqu”新闻板 我有一个list元素,它通过JavaJSF2动态创建页面加载列表,确切地说,它是从我的数据库构建的。我想要的是一个ajax函数简单的ajax poll就足以检查更改,如果更改适用于为新列表元素执行简单的淡出/淡入功能。不管这个更新列表元素是像滚动动画一样被放在列表的底部,还是保留在原来的位置,我不介意,我只是对如何实现这一点感到困惑 以下是我

我对jQuery和Ajax还很陌生,我希望能从社区得到一些支持/帮助。基本上,我正在尝试为一些预先确定的新闻源创建一个“facebook esqu”新闻板

我有一个list元素,它通过JavaJSF2动态创建页面加载列表,确切地说,它是从我的数据库构建的。我想要的是一个ajax函数简单的ajax poll就足以检查更改,如果更改适用于为新列表元素执行简单的淡出/淡入功能。不管这个更新列表元素是像滚动动画一样被放在列表的底部,还是保留在原来的位置,我不介意,我只是对如何实现这一点感到困惑

以下是我想法的粗略表述:

onPage load:
List Item 1
List Item 2
List Item 3 

OnAjax Update:
List Item 1
List Item 2 <--- Update Identified so fade element out
List Item 3

OnAjax After Update:
List Item 1
List Item 2a <--- Fade new element in
List Item 3
希望有人能帮忙


干杯

问题是您要求我们为您编写代码。但是,为了让你朝着正确的方向前进:

假设在调用JSF2页面进行更新时,它只返回更新的项目,如下所示:

{{id: 2, status: "removed"},
 {id: 2a, status: "added", text: "This is a new element"},
 {id: 4, status: "added", text: "This element 4"}}
for (each element in JSON string as element) {
  if (element.status == 'removed') { 
    $('#' + element.id).fadeOut().remove();
  } else if (element.status == 'added') {
    $("#listelements").append('<div id="' + element.id 
      + '" style="display:none;">' 
      + element.text + '</div>');
    $("#" + element.id).fadeIn();
  }
}
然后,您将拥有一个在JSON结果上循环的函数,查看status字段

如果表示形式类似于:

<div id="listelements">
   <div id="1">List Item 1</div>
   <div id="2">List item 2</div>
   <div id="3">List Item 3</div>
</div>
然后,您的代码可以如下所示:

{{id: 2, status: "removed"},
 {id: 2a, status: "added", text: "This is a new element"},
 {id: 4, status: "added", text: "This element 4"}}
for (each element in JSON string as element) {
  if (element.status == 'removed') { 
    $('#' + element.id).fadeOut().remove();
  } else if (element.status == 'added') {
    $("#listelements").append('<div id="' + element.id 
      + '" style="display:none;">' 
      + element.text + '</div>');
    $("#" + element.id).fadeIn();
  }
}
请注意,我还没有调试这段代码,所以我不确定它是否能100%工作。这是在一个可能的方向推动你开始。你会发现,在你开始研究这个问题之后,如果你提出更具体的问题,你会得到更好的答案