链接到由隐藏/显示JavaScript函数隐藏的站点部分
我正在使用一点JavaScript在单击选项卡时显示/隐藏站点的部分。我试图找出是否有一种方法可以链接回该页面,并根据该链接打开某个选项卡 以下是JS:链接到由隐藏/显示JavaScript函数隐藏的站点部分,javascript,visibility,hyperlink,Javascript,Visibility,Hyperlink,我正在使用一点JavaScript在单击选项卡时显示/隐藏站点的部分。我试图找出是否有一种方法可以链接回该页面,并根据该链接打开某个选项卡 以下是JS: var ids=new Array('section1','section2','section3','section4'); function switchid(id, el){ hideallids(); showdiv(id); var li = el.parentNode.parentNode.ch
var ids=new Array('section1','section2','section3','section4');
function switchid(id, el){
hideallids();
showdiv(id);
var li = el.parentNode.parentNode.childNodes[0];
while (li) {
if (!li.tagName || li.tagName.toLowerCase() != "li")
li = li.nextSibling; // skip the text node
if (li) {
li.className = "";
li = li.nextSibling;
}
}
el.parentNode.className = "active";
}
function hideallids(){
//loop through the array and hide each element by id
for (var i=0;i<ids.length;i++){
hidediv(ids[i]);
}
}
function hidediv(id) {
//safe function to hide an element with a specified id
document.getElementById(id).style.display = 'none';
}
function showdiv(id) {
//safe function to show an element with a specified id
document.getElementById(id).style.display = 'block';
}
var id=new数组('section1'、'section2'、'section3'、'section4');
函数开关id(id,el){
汗腺();
showdiv(id);
var li=el.parentNode.parentNode.childNodes[0];
而(李){
如果(!li.tagName | | li.tagName.toLowerCase()!=“li”)
li=li.nextSibling;//跳过文本节点
如果(李){
li.className=“”;
li=li.nextSibling;
}
}
el.parentNode.className=“活动”;
}
函数hidealids(){
//循环遍历数组并按id隐藏每个元素
for(var i=0;iHTML功能完全独立于CSS。因此,即使预期的部分设置为display:none,以下代码也将始终有效
<a href="#section3">Link to section3</a>
HTML功能完全独立于CSS。因此,即使要显示的部分设置为“无”,以下代码也始终有效
<a href="#section3">Link to section3</a>
您可以在页面加载时运行一些脚本,检查url哈希并加载适当的部分:
// on page load
var sectionid = /section\d/i.exec(location.hash);
if (sectionid) {
var link = document.getElementById(switchid[0] +"_link");
switchid(sectionid[0], link);
}
&将id添加到您的链接:
<li><a id="section2_link" onclick="switchid('section2', this);return false;">Two</a></li>
两个
您可以在页面加载时运行一些脚本,检查url哈希并加载适当的部分:
// on page load
var sectionid = /section\d/i.exec(location.hash);
if (sectionid) {
var link = document.getElementById(switchid[0] +"_link");
switchid(sectionid[0], link);
}
&将id添加到您的链接:
<li><a id="section2_link" onclick="switchid('section2', this);return false;">Two</a></li>
两个
我需要从另一个页面的入站链接执行此操作。类似于。不幸的是,此操作不起作用。实际上,您的建议也不起作用。当我将您的定位点放置在页面上时,什么都不会发生。当我将您的定位点放置在页面上时,什么都不会发生。
浏览器中的地址是否会更改为t的地址当前页面+#section 3
?确实如此。试试这个:您好,这对您有用吗?我不确定锚点将如何覆盖显示:无它不会覆盖显示:无。正如我在帖子中所说,HTML功能完全独立于CSS。当您说以下代码将始终有效,即使预期的部分是se不显示:无,我想我误解了。我正在寻找实际打开选项卡的内容,将其可见性设置为display:block。也许我在帖子中不够清楚。谢谢。我需要从另一个页面的入站链接使用此功能。类似。很遗憾,此功能不起作用。您推荐的,a也不起作用事实上。当我将你的锚放在页面上时,什么都不会发生。当我将你的锚放在页面上时,什么都不会发生。
你浏览器中的地址是否会更改为当前页面的地址+#第3节
?确实如此。试试这个:您好,这对你有用吗?我不确定锚如何覆盖显示:noneIts not going覆盖显示:无。正如我在我的post HTML功能中所说的,它完全独立于CSS。当你说即使预期的部分设置为display:none,以下代码也将始终有效时,我想我误解了。我正在寻找实际打开选项卡的内容,将其可见性设置为display:block。也许我不是cl在我的帖子里听够了。谢谢。是的,这就是我要找的。谢谢。但是我在让它工作时遇到了麻烦。当我用页面加载事件添加它时,什么都没有发生。而且,我再也不能点击标签来激活。我对javascript相当陌生,所以我可能遗漏了一些东西。我对重用“swi”有点困惑tchid'与您的方式相同。我使用您的函数switchid时出错。我对我的示例进行了一点清理,但是,您肯定需要对其进行修改以使其正常工作。断开的选项卡可能是JS错误,您是否检查了浏览器的javascript错误控制台?是的,这是我正在寻找的。谢谢。我没有卢布让它开始工作。当我在页面加载事件中添加它时,什么都没有发生。而且,我不能再点击选项卡来激活。我对javascript相当陌生,所以我可能遗漏了一些东西。我有点困惑于如何像你那样重用“switchid”。我使用你的函数switchid时出错。我清理了我的例子有点夸张,但是,你肯定需要修改它才能让它正常工作。坏掉的标签可能是JS错误,你检查过浏览器的javascript错误控制台吗?