CSS-Javascript:Show和Hide-div

CSS-Javascript:Show和Hide-div,javascript,html,css,Javascript,Html,Css,我想创建一个菜单,其中只有标题,并提供了查看更多链接。 如果单击该链接,它将打开一个隐藏的div,并且“更多”视图应更改为“显示较少”或“关闭”。如果我点击div应该再次关闭。 到目前为止,我有这个 Title 1 <a href="#" onclick="showdiv()">View More</a> <div id="title1_div"> Some Information </div> <style> #title1_div

我想创建一个菜单,其中只有标题,并提供了查看更多链接。 如果单击该链接,它将打开一个隐藏的div,并且“更多”视图应更改为“显示较少”或“关闭”。如果我点击div应该再次关闭。 到目前为止,我有这个

Title 1 <a href="#" onclick="showdiv()">View More</a>
<div id="title1_div">
Some Information
</div>

<style>
#title1_div{
display:none;
}
</style>

<script>
function showdiv()
{
document.getElementById('title1_div').style.display = 'block';
}
</script>
标题1
一些信息
#标题1_div{
显示:无;
}
函数showdiv()
{
document.getElementById('title1_div')。style.display='block';
}
这仅提供单击显示分区。我如何在单击时关闭该div

任何帮助都将不胜感激


请参见JSFIDLE上的示例:

您只需检查属性是否设置为block,如果是,则将其设置为none,否则将其设置为block。所以你有一个切换逻辑

if(document.getElementById('title1').style.display == 'block') {
   document.getElementById('title1').style.display = 'none';
} else {
   document.getElementById('title1').style.display = 'block';
}
要将文本设置为“查看较少”,需要单击标记的引用,可以将其作为参数传递,如下所示:

<a href="#" onclick="showdiv(this)">View More</a>
请看这把小提琴:


您只需检查属性是否设置为block,如果设置为none,则将其设置为none,否则将其设置为block。所以你有一个切换逻辑

if(document.getElementById('title1').style.display == 'block') {
   document.getElementById('title1').style.display = 'none';
} else {
   document.getElementById('title1').style.display = 'block';
}
要将文本设置为“查看较少”,需要单击标记的引用,可以将其作为参数传递,如下所示:

<a href="#" onclick="showdiv(this)">View More</a>
请看这把小提琴:


简单的功能。单击时调用它,它将处理隐藏/显示:

function toggle_visibility(id) {
   var e = document.getElementById(id);
   if(e.style.display == 'block')
      e.style.display = 'none';
   else
      e.style.display = 'block';
}

简单的功能。单击时调用它,它将处理隐藏/显示:

function toggle_visibility(id) {
   var e = document.getElementById(id);
   if(e.style.display == 'block')
      e.style.display = 'none';
   else
      e.style.display = 'block';
}

下面是一个工作示例

函数showdiv(el){
如果(el.innerHTML==“查看更多”){
document.getElementById('title1').style.display='block';
el.innerHTML=“显示较少”;
}否则{
document.getElementById('title1').style.display='none';
el.innerHTML=“查看更多”;
}
}
#标题1{
显示:无;
}
标题1
一些信息

以下是一个工作示例

函数showdiv(el){
如果(el.innerHTML==“查看更多”){
document.getElementById('title1').style.display='block';
el.innerHTML=“显示较少”;
}否则{
document.getElementById('title1').style.display='none';
el.innerHTML=“查看更多”;
}
}
#标题1{
显示:无;
}
标题1
一些信息

你做的与你做的相反你做的与你做的相反错过了将主播文本从“查看更多”更改为“显示更少”或“关闭”。错过了将主播文本从“查看更多”更改为“显示更少”或“关闭”。我认为他没有使用jQuery,所以。。。标签中也没有jQuery。很高兴看到您的答案。可能提到“使用jQuery的解决方案”,OP没有包含jQuery标记。对不起,是的,我应该提到这是一个jQuery解决方案。我认为他没有使用jQuery,所以。。。标签中也没有jQuery。很高兴看到您的答案。可能提到“使用jQuery的解决方案”,OP没有包含jQuery标记。对不起,是的,我应该提到这是一个jQuery解决方案。错过了将锚文本从“查看更多”更改为“显示更少”或“关闭”。错过了将锚文本从“查看更多”更改为“显示更少”或“关闭”。