javascript更改切换按钮文本

javascript更改切换按钮文本,javascript,Javascript,我有一段用于语言切换的代码: function toggleDiv(divid) { varon = divid + 'on'; varoff = divid + 'off'; if(document.getElementById(varon).style.display == 'block'){ document.getElementById(varon).style.display = 'none'; document.getElementById(v

我有一段用于语言切换的代码:

function toggleDiv(divid) {  
varon = divid + 'on';
varoff = divid + 'off';
      if(document.getElementById(varon).style.display == 'block'){
      document.getElementById(varon).style.display = 'none';
      document.getElementById(varoff).style.display = 'block';
      }
        else {  
            document.getElementById(varoff).style.display = 'none';
            document.getElementById(varon).style.display = 'block'
        }
} 
和HTML:

<div id="mydivon" style="display:block">some language text</div>
<div id="mydivoff" style="display:none">some other language text</div>
 <a href="#" onmousedown="toggleDiv('mydiv');">Language1/Language2</a>
一些语言文本
其他语言文本
我想使切换按钮可切换,当选择一种语言1时,将切换文本切换为语言2,反之亦然。欢迎提供一些建议。Thx

我已经设置了一个,这就是你想要达到的效果吗?正如@Shilly在评论中所说的,您可以使用来更改锚定标签的内容

我已经为你的anchor
#languageSwitch
分配了一个ID,所以我可以在你的JS中执行以下操作

HTML

<div id="mydivon" style="display:block">
    Language 1 is selected
</div>
<div id="mydivoff" style="display:none">
    Language 2 is selected
</div>
<a id="languageSwitch" href="#" onmousedown="toggleDiv('mydiv');">
    Switch to Language2
</a>
我已经设置了一个,这是您想要达到的效果吗?正如@Shilly在评论中所说的,您可以使用来更改锚定标签的内容

我已经为你的anchor
#languageSwitch
分配了一个ID,所以我可以在你的JS中执行以下操作

HTML

<div id="mydivon" style="display:block">
    Language 1 is selected
</div>
<div id="mydivoff" style="display:none">
    Language 2 is selected
</div>
<a id="languageSwitch" href="#" onmousedown="toggleDiv('mydiv');">
    Switch to Language2
</a>

步骤1:将id添加到链接:

<a id="toggle-language" href="#" onmousedown="toggleDiv('mydiv');">Language1/Language2</a>

步骤1:将id添加到链接:

<a id="toggle-language" href="#" onmousedown="toggleDiv('mydiv');">Language1/Language2</a>

如OP在评论中所述:

当前,无论是否选中某个元素,都会显示该元素,但切换本身不会更改语言

现在您可以做的是当您向下鼠标并执行
toggleDiv(divid)
您应该有一个特殊的变量,名为
this

这个
在最简单的形式中基本上是指“这个叫我”。 在您的情况下,
这是
链接

那么,在您的职能范围内,您可以做什么:

function toggleDiv(divId) {
    //also highly recommend you cache your variables
    varon = document.getElementById(divId + 'on');
    varoff = document.getElementById(divId + 'off');

    if (varon.style.display == 'block') {
        varon.style.display == 'none';
        varoff.style.display = 'block';
        this.innerHTML = varoff.innerHTML; // <- selected element value injected in bound button
    } else
        varon.style.display == 'block';
        varoff.style.display = 'none';
        this.innerHTML = varon.innerHTML; // <- selected element value injected in bound button
}
函数切换div(divId){
//还强烈建议您缓存变量
varon=document.getElementById(divId+'on');
varoff=document.getElementById(divId+off');
if(varon.style.display=='block'){
varon.style.display==“无”;
varoff.style.display='block';

this.innerHTML=varoff.innerHTML;//如OP在注释中所述:

当前,无论是否选中某个元素,都会显示该元素,但切换本身不会更改语言

现在您可以做的是当您向下鼠标并执行
toggleDiv(divid)
您应该有一个特殊的变量,名为
this

这个
在最简单的形式中基本上是指“这个叫我”。 在您的情况下,
这是
链接

那么,在您的职能范围内,您可以做什么:

function toggleDiv(divId) {
    //also highly recommend you cache your variables
    varon = document.getElementById(divId + 'on');
    varoff = document.getElementById(divId + 'off');

    if (varon.style.display == 'block') {
        varon.style.display == 'none';
        varoff.style.display = 'block';
        this.innerHTML = varoff.innerHTML; // <- selected element value injected in bound button
    } else
        varon.style.display == 'block';
        varoff.style.display = 'none';
        this.innerHTML = varon.innerHTML; // <- selected element value injected in bound button
}
函数切换div(divId){
//还强烈建议您缓存变量
varon=document.getElementById(divId+'on');
varoff=document.getElementById(divId+off');
if(varon.style.display=='block'){
varon.style.display==“无”;
varoff.style.display='block';

this.innerHTML=varoff.innerHTML;//您的代码似乎正常工作,您遇到了什么问题?请注意,您可以在varon/varoff中缓存节点,这样您就不必三次获取相同的元素。编辑:您可以通过选择链接文本并将textContent设置为语言1或2来更改链接文本。是的,它正常工作,但可以切换ton(切换文本)始终保持不变,我无法使该按钮根据所选语言更改值您的代码似乎正常工作,您遇到了什么问题?请注意,您可以在varon/varoff中缓存节点,因此不必三次获取相同的元素。编辑:您可以通过选择链接文本并将textContent设置为EIT来更改链接文本r语言1或2。是的,它可以工作,但切换按钮(切换文本)始终保持不变,我无法使该按钮根据所选语言更改值我忘记了
textContent!
-不打算删除我的答案,而是对你的答案投了赞成票;)我离得太近了,我忘了将id添加到
a href
-这就解决了问题。谢谢。它应该在移动设备上运行良好吗?因为我在我的端口上使用了你的工作olio和它在桌面上运行得非常好,但在移动设备上它只是重新加载页面。我忘记了
文本内容!
-不打算删除我的答案,而是对你的答案投了赞成票;)我离得太近了,我忘了将id添加到
a href
-这就解决了问题。谢谢。它在移动设备上运行得好吗?因为我在我的作品集和它在桌面上运行非常好,但在移动设备上它只是重新加载页面。