JQuery HideAllShowOne + 链接以打开 DIV

JQuery HideAllShowOne + Link to open DIV

本文关键字:DIV 链接 HideAllShowOne JQuery      更新时间:2023-09-26

我只使用HideAllShowOne使用这个JQuery:

<script type="text/javascript" language="JavaScript"><!--
function HideContent(d) {
document.getElementById(d).style.display = "none";
}
function ShowContent(d) {
document.getElementById(d).style.display = "block";
}
function HideAllShowOne(d) {
if(document.getElementById(d).style.display == "none") { document.getElementById(d).style.display = "block"; }
else { document.getElementById(d).style.display = "none"; }
}
function HideAllShowOne(d) {
// Between the quotation marks, list the id values of each div.
var IDvaluesOfEachDiv = "1 2 3 4 5 6 7 8 9 10 11 12 13 14";
//-------------------------------------------------------------
IDvaluesOfEachDiv = IDvaluesOfEachDiv.replace(/[,'s"']/g," ");
IDvaluesOfEachDiv = IDvaluesOfEachDiv.replace(/^'s*/,"");
IDvaluesOfEachDiv = IDvaluesOfEachDiv.replace(/'s*$/,"");
IDvaluesOfEachDiv = IDvaluesOfEachDiv.replace(/  +/g," ");
var IDlist = IDvaluesOfEachDiv.split(" ");
for(var i=0; i<IDlist.length; i++) { HideContent(IDlist[i]); }
ShowContent(d);
}
//--></script>

使用此 HTML

<div class="heading marg_none">
    <h5><a href="javascript:HideAllShowOne('2')">Step 2. Adding Services</a></h5>
</div>
<div id="2" style="display: none;">         
     <p>
         Watch the video for full details.            
     </p>
</div>

这适用于在我的网站上的常见问题解答样式页面中打开每个部分,但我希望能够从网站上的其他地方链接到每个问题,并让它自动滚动到该 DIV 并打开它。这可能吗?

谢谢。

网址必须如下所示: http://www.aaa.com/faq#1(对于第一个问题)哈希显示这是第一个问题。您可以检查此代码下方的 URL 上是否有任何哈希:

if(window.location.hash) {
  // Has exist
} else {
  // Hash doesn't exist
}

然后,您应该从此代码下方的URL获取哈希:

var url = "http://www.aaa.com/faq#1";
var hash = url.substring(url.indexOf("#")+1);

在此示例中,此哈希应为"1"。最后一步是滚动到div:

window.location.hash = hash;