2011-09-28 100 views
0

这是我的网站。 http://www.sarahjanetrading.com/js/j/index.html所有的代码+图像+ css都可以访问任何人如何用鼠标单击时更改锚点的文本?

当任何人点击听按钮时,它的背景会变为停止监听,反之亦然。这是我想要的功能,我使用jQuery。

我现在也想要的是相应地改变文字。比如,当有人点击“监听”锚点时,其文本应该变为“停止监听”,并且停止监听锚点的文字也应该相同。就像一个切换锚点。

感谢您的帮助!真的很感激... :)

+0

我已经使用您的确切来源在下面发布了答案。只要去JSfiddle。 –

+0

我查了一下。完美的作品。非常感谢时间和精力。真的很感激它们! :) – user967211

回答

1

在这里,我使用你的源代码制作了这个JSFiddle。

http://jsfiddle.net/K4Njj/2/

这里是jQuery代码:

$(function(){ 
    $("#container a").click(function(){ 
     if ($(this).html() == "Stop Listening") 
     { 
      $(this).html("Listen"); 
     } 
     else if ($(this).html() == "Listen") 
     { 
      $(this).html("Stop Listening"); 
     } 
    }); 
}); 

这将简单地检查,看看是否在锚文本是“停止收听”或“听”,如果是,它会当你按下按钮时切换它。这真的是最优雅的解决方案。

+0

谢谢。太棒了。非常感谢 ! – user967211

+0

不客气。顺便说一下,我只做了最后一项更改(在它将更改链接容器中的任何链接之前,现在它只会影响监听和停止监听) –

4
$("#first").toggle(function(){ 
    $(this).text("Stop listening"); 
}, function(){ 
    $(this).text("Listen"); 
}); 

在线演示:http://jsfiddle.net/5AUdJ/


UDPATE

我看你使用的是类控制听/停止状态。也许这会更好。

$("a").click(function(){ 
    if($(this).is(".listen")){ 
     $(this).text("Stop listening").removeClass("listen"); 
    } else { 
     $(this).text("Listen").addClass("listen"); 
    } 
}); 
+0

不工作。是因为我使用的是第一个类而不是id?我也尝试过,但没有工作。 :( – user967211

+0

我在你发布的链接上测试过,它的工作完美,链接中的id是“first”。 – amosrivera

+1

@ user967211更好的检查在线演示:http://jsfiddle.net/5AUdJ/ – amosrivera

0

在您的Javascript中,您可以使用innerHTML属性来访问和/或更改元素的HTML文本。

getElementById("first").innerHTML = "newtext"