通过单击超链接切换文本
toggle text by clicking on hyperlink
我需要在不隐藏任何禁用功能的情况下打开/关闭html中的文本。以下代码可以切换on
和off
但问题是这样的:
- 它无法在不隐藏另一个单词的情况下切换。 即当我按下打开时,它会隐藏关闭功能。
- 当我为另一个行项目添加切换方法时,它只切换第一个行项目。因此,如果我将其添加到原始行之后五行的行项目中,它只会触发原始项目。
function toggle() {
var ele = document.getElementById("toggleText");
var text = document.getElementById("displayText");
if (ele.style.display == "block") {
ele.style.display = "none";
text.innerHTML = "On";
} else {
ele.style.display = "block";
text.innerHTML = "Turn Off";
}
}
<h1>Services</h1>
<h2>Subscribed Services</h2>
<ul>
<li>Geolocation -<a id="displayText" href="javascript:toggle();">On</a>
<div id="toggleText" style="display: none"></div>
</li>
<li>E-Mail Messaging -<a id="displayText" href="javascript:toggle();">On</a>
<div id="toggleText" style="display: none"></div>
</li>
</ul>
我做错了什么?
首先对代码进行一些注释:
ID必须是唯一的!因此,请改用类。
我希望我正确理解您要实现的目标:
.HTML:
<h2>Subscribed Services</h2>
<ul>
<li>Geolocation -<a class="displayText" href="javascript:void(0);">On</a>
</li>
<li>E-Mail Messaging -<a class="displayText" href="javascript:void(0);">On</a>
</li>
</ul>
.JS
$('.displayText').on('click', function(e) {
$(this).text(function(i, s) {
return s === 'On' ? 'Off' : 'On';
});
});
例
参考:
.text()
相关文章:
- 将超链接添加到“;标题“;标记文本
- 文本建议的超链接
- 将 Javascript 数组中的文本转换为超链接
- 如何为应用深度链接创建超链接文本
- HTML5 中图像顶部的超链接文本
- 通过单击超链接切换文本
- 解码 URI 问题 - 超链接变为纯文本
- 如何在文本框中将输入的文本更改为超链接
- 如何组合两个文本超链接
- Jssor 滑块 - 指向特定幻灯片的文本超链接
- 我想要一个 jquery 日期选择器将默认日期更改为超链接中的文本
- 将鼠标悬停在文本超链接上以成为图像
- 如何用JavaScript/jQuery替换和缩短一段文本中的超链接
- 如何在tinymce文本编辑器下的新窗口中打开超链接
- 在 html 中添加超链接时,文本未正确截断
- 保存超链接URL's来自所选文本
- 替换超链接href中的匹配文本
- 如何在引导模式中通过单击超链接打开文本框后为其设置值
- javascript将[]中的文本替换为超链接
- 使用文本超链接将文本添加到输入字段