我有什么
我在导航栏中有一个名为"关于我们" &安培;它有两个子项>简介&愿景,但我有一个名为profilevision.html的页面,其中有两个divs profile&视觉以及两个按钮配置文件&单击配置文件时的视觉jq显示配置文件div&隐藏愿景div
我想做什么
当在profilevison.html以外的页面上时,如果点击导航栏视觉我想加载profilevison.html加载视觉div可见&个人资料div隐藏
我尝试了什么
我无法想到任何事情
好的,我会尝试清楚
访问此网站enter link description here
在主页上有一个导航栏,其中包含两个子项简介&视觉点击其中任何一个打开页面profilevision.html enter link description here,其中有两个divs profile&默认情况下,视觉视觉是隐藏的,我有两个onclick事件,右边有两个按钮,显示它的相应标签。现在我想要的是如果从主页如果我点击视觉我想要显示视觉选项卡&隐藏个人资料标签
答案 0 :(得分:1)
我认为有三种选择。
1)为他们制作两个具有所需默认值的不同文件(profile.html& vision.html)
或
2)您可以尝试将一个字符串嵌入到URL中,然后可以从中拉出子字符串以确定哪些字符串应该可见。下面是一个简短的例子:
导航栏链接
<ul class="drops" style="display: none;">
<li class="profiletab"><a href="profilevision.html?default=profile">Profile</a></li>
<li class="visiontab"><a href="profilevision.html?default=vision">Vision</a></li>
</ul>
然后在profilevision.html文档中,你可以像这样运行一个现成的脚本。
$(function(){
var defaultView = window.location.split('?default=')[1];
if(defaultView == 'vision'){
$('.vis').show();
$('.pro').hide();
}
});
此代码未经过测试但应该接近。
3)另一种选择是使用cookie来存储这个变量,然后在页面加载时拉出那个cookie,看看默认情况下应该加载哪个。这是开始使用Cookie的好地方:https://github.com/carhartl/jquery-cookie
一个基本的例子是:
$('ul.drops li a').on('click', function(e){
e.preventDefault();
$.cookie('defaultView', $(this).text());
window.location = $(this).attr('href');
});
然后为你的条件:
$(function(){
if($.cookie('defaultView') == 'Vision'){
$('.vis').show();
$('.pro').hide();
$.removeCookie('defaultView');
}
});
旁注
通常当你发现自己做这样的事情时,这不是一件好事。我自己会称这是一个黑客工作,以对抗设计缺陷。考虑查看服务器端生成的内容。你会惊讶于你对这种情况有多少控制权。
答案 1 :(得分:1)
将个人资料的链接更改为:
http://kwebmakerusa.com/gciint/01102015/profilevision.html?section=profile
以及愿景的链接:
http://kwebmakerusa.com/gciint/01102015/profilevision.html?section=vision
并将此脚本添加到您的网站:
if (window.location.href.indexOf("profile") > -1) {
$( ".profiletab" ).trigger( "click" );
} else if (window.location.href.indexOf("vision") > -1) {
$( ".visiontab" ).trigger( "click" );
}
此代码检查url是否包含配置文件,如果它包含在加载期间触发的配置文件,则单击li.profiletab(后面仅显示配置文件选项卡部分),如果URL包含视觉,则相同。