编辑:所以我将style.display更改为阻止,其中一些工作正常。内部和外部textareas回来时找不到元素
另一个编辑:
在我的CSS中,我有一个显示:无。 当我删除它,它的工作原理。但这并不好,因为元素只有在onclick之后才可用。为什么设置它显示没有阻止它显示?
我这里有一个简单的脚本。基本上我想将面板的所有内容设置为不可见(document.style.display =“none”),然后在我浏览完所有内容之后,将其设置为可见,如方法所示。
使用Javascript:
function showText(divToShow)
{
var docsToHide = document.getElementsByClassName("full-width");
for (var i = 0; i<docsToHide.length;i++)
{
docsToHide[i].style.display="none";
}
var docToShow=document.getElementById(divToShow);
docToShow.style.display="table";
console.log(docToShow.style.display);
}
一些注意事项:全宽度以下列形式返回textAreas的完整列表:
[textarea#page-description-textarea.full-width, textarea#keywords-text-area.full-width, textarea#files-textarea.full-width, textarea#internal-links-textarea.full-width, textarea#external-links-textarea.full-width]
在它们全部设置之后的循环结束时,我将指定的textArea(divToShow).display设置为表,但之后没有任何显示。
有什么想法吗?我忽略了什么吗?
编辑:为textareas添加了html
<div id="text-column">
<div id="page-description-text">
<textarea id = "page-description-textarea" class="full-width">Page Description</textarea>
</div>
<div id="keywords-text">
<textarea id="keywords-text-area" class="full-width"> Keywords</textarea>
</div>
<div id="files-text">
<textarea id="files-textarea"class="full-width">files</textarea>
</div>
<div id="internal-links-text">
<textarea id="internal-links-textarea" class="full-width">internal</textarea>
</div>
<div id="external-links-text">
<textarea id="external-links-textarea"class="full-width">external</textarea>
</div>
</div>
最后要注意的是,所有textArea元素都将自己设置为不可见。他们只是不回来。
答案 0 :(得分:1)
您是否将正确的id
传递给showText()
函数?
由于您的变量名为divToShow
,我认为您正在传递id
<div>
正确设置display:table
,但您已经< em>实际上隐藏了隐藏的<textarea>
孩子。
如果您通过了id
的{{1}},则代码功能会按预期工作,就像在this demo中一样。