2012-03-07 79 views
0

這裏的內容的例子:http://jsbin.com/izegoy
問題:http://i.imgur.com/h1T98.pngjQuery的不能正常更新跨度標籤

腳本:

$(document).ready(function(){ 
    $("p:eq(1)").hide().after("<span>View more</span>"); 
    $("span").click(function(){ 
     $("p:eq(1)").slideToggle(200,function(){ 
      if($("span").text()=="View more"){ 
       $("span").text("View less"); 
     } else{ 
       $("span").text("View more"); 
     } 
     }); 
    }); 
}); 

HTML:

<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod 
tempor incididunt ut labore et dolore magna aliqua.</p> 
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod 
tempor incididunt ut labore et dolore magna aliqua.</p> 

當我更新內容在span標籤之外,它會在原始span標籤之外創建新文本。它在頁面上並不明顯,但只有在查看生成的源代碼時纔是如此。我不知道,我做錯了什麼。

謝謝你的時間

+0

您的代碼似乎工作:[http://jsfiddle.net/UpK9V/](http://jsfiddle.net/UpK9V/) – bfavaretto 2012-03-07 16:12:53

+0

我沒有看到您所看到的內容,所創建的唯一文本位於span標籤內。 – 2012-03-07 16:13:47

+0

在Chrome 17中工作(並使用Inspector進行驗證)。 – 2012-03-07 16:14:51

回答

0

這應該真的很好。但是,你可以嘗試使用html();方法來代替:

$("span").html("View less"); 
+0

謝謝。這工作完美。 http://jsbin.com/izegoy/2 – pumpalarumpa 2012-03-07 16:35:23

+0

很高興幫助:) – 2012-03-08 15:31:10