Javascript 通过在div中使用html注释显示/隐藏文本
如何使用html注释拆分div中的一些文本。 Lats说我唧唧:Javascript 通过在div中使用html注释显示/隐藏文本,javascript,jquery,Javascript,Jquery,如何使用html注释拆分div中的一些文本。 Lats说我唧唧: <div id="id1">Some first text <!--more--> here.</div> <a id=id1>Show/Hide</a> <div id="id2">Some second text is <!--more--> right here.</div> <a id=id1>Show/Hide&l
<div id="id1">Some first text <!--more--> here.</div>
<a id=id1>Show/Hide</a>
<div id="id2">Some second text is <!--more--> right here.</div>
<a id=id1>Show/Hide</a>
这里有一些第一个文本。
显示/隐藏
第二段文字就在这里。
显示/隐藏
我不会使用jquery或javascript在
之后显示或隐藏文本。
谢谢您可以尝试以下方法: 给定标记:
<div id="id1">Some first text <!--more--> here.</div>
<a>Hide</a>
<div id="id2">Some second text is <!--more--> right here.</div>
<a>Hide</a>
这里有一些第一个文本。
作为一个有效的例子
更新:更新的解决方案不依赖单独的CSS类隐藏/显示文本。可以添加或删除文本,但不显示或隐藏。你到底想实现什么?你不能将你想显示/隐藏的文本包装成一个,然后使用jQuery-on来显示/隐藏吗?最终你无法获得你想实现的内容,但是$(“#id”).html()
将返回div中的所有内容(包括html注释)你可以随心所欲地使用它。类似于blog post,但我不想将其与任何其他内容分开,因为div中的文本将是html格式的。谢谢,伙计,但你忘了调用单独的$('a').html('Show')$('a').prev('div').children('hiddenText').hide()代码>以在加载时隐藏。这是一个完整的脚本
//1. On page load, wrap text to be hidden in <span>
$(function() {
$("div").each(function() {
var html = $(this).html();
$(this).html(html.replace('<!--more-->', '<span class="hiddenText">', html) + '</span>');
});
// 2. Toggle visibility of span tags when clicking link
$('a').click(function() {
if ($(this).html() == 'Hide') {
$(this).prev('div').children('.hiddenText').hide();
$(this).html('Show');
} else {
$(this).prev('div').children('.hiddenText').show();
$(this).html('Hide');
}
});
});