0

我有一个list和一个button...

如果有人单击该按钮,我想用具有特定类的不同列表项替换列表项。已经有课了,就是不知道怎么loadreplace。。。

我做了这个:

$(document).ready(function() {
 $("#dynamic").click(function() {
     var refreshId = setInterval(function() {
         $('.remove-this-list-on-click').fadeOut("slow", function () {
             $(this).load("li a.add-this-list-on-click-instead > *").fadeIn("slow");
         });
     });
 });
 });

以下是按钮和列表:

       <div id="dynamic">testestetest</div>
<ul class="most_popular" id="bla">
    <li class="remove-this-list-on-click"></li>
    <li class="remove-this-list-on-click"></li>
    <li><a class="add-this-list-on-click-instead"></a></li>
    <li><a class="add-this-list-on-click-instead"></a></li>
</ul>

所以你可以看到这个类的列表add-this-list-on-click-instead已经在那里了,所以它应该留在那里。也许我们可以使用删除remove-this-list-on-click列表项,但我不知道如何...我想这在您的语言中称为排序....我想在单击时对项目进行排序。

这是jSfiddle--> http://jsfiddle.net/aYtma/

4

2 回答 2

2

你不必在.load那里使用,如果类已经在那里,你不必做任何事情 -

只需删除此行

 $(this).load("li a.add-this-list-on-click-instead > *").fadeIn("slow");

如果.add-this-list-on-click-instead最初是隐藏的 -

然后用这个让它可见 -

$("#dynamic").click(function() {
     $this = $(this);
     var refreshId = setInterval(function() {
         $('.remove-this-list-on-click').fadeOut("slow", function () {
             $this.find("a.add-this-list-on-click-instead").fadeIn("slow");
         });
     });
});
于 2013-07-30T09:21:28.063 回答
1

您的 html 不正确。您有打开的引号和不正确的右大括号。

更正:

<div id="dynamic">testestetest</div>
<ul class="most_popular" id="bla">
    <li class="remove-this-list-on-click"></li>
    <li class="remove-this-list-on-click"></li>
    <li><a class="add-this-list-on-click-instead"></a></li>
    <li><a class="add-this-list-on-click-instead"></a></li>
</ul>

现在它至少会开始响应您的 JS。此外,您还不清楚是否要删除项目/对项目进行排序/突出显示或刷新项目。可能是你应该更新你的问题。

于 2013-07-30T09:24:54.430 回答