我有类似下面的HTML:
<div id="first"> FIirst Div</div>
<div id="second"> Second Div</div>
<div id="third"> Third Div</div>
<a href="#" id="one">View First Div</a>
<a href="#" id="two">View Second Div</a>
<a href="#" id="three">View Third Div</a>
CSS和Jquery:
#second,#third {
display:none;
}
$('#one').click(function(){
$('#first').show();
$('#second').hide();
$('#third').hide();
});
$('#two').click(function(){
$('#first').hide();
$('#second').show();
$('#third').hide();
});
$('#three').click(function(){
$('#first').hide();
$('#second').hide();
$('#third').show();
});
因此,如果我们点击third
,上面的代码会显示div View Third Div
。现在,如果我将页面重定向到自身,它将返回其原始属性并显示第一个div。我想知道是否有任何方法/技术可以在重定向上述结构后显示我需要的div?
答案 0 :(得分:1)
您可以重定向到同一页面但有一些url参数。 此参数可用于确定是否显示div。 只是
http://mypageurl.com/page.html使用 http://mypageurl.com/page.html?showDiv=true
即使使用javascript,您也可以通过服务器端代码读取参数。以下是jQuery
的使用方法答案 1 :(得分:1)
有两种方法可以实现:
1.简单的方法。在重定向URL中添加一个参数。重定向到页面时,使用js分析URL并调用相应的函数来显示属性;
2.复杂的方式。单击以显示相应的属性时,发送ajax请求并记录您按会话读取的属性。再次访问此页面时,请使用会话信息来决定要显示的属性。
答案 2 :(得分:1)
重定向时在hash
中使用关于有效URI
DIV
值
例如:www.yoururl.com/sumthing#ActiveDiv=div123
$(function(){
var activediv = $(location).attr('hash'); //get the active div
......CODE to make active your DIV now...............
})
答案 3 :(得分:0)
在重定向页面时,您可以将div_id传递给show,而在html页面中,您可以使用javascript获取URL参数名称并相应地显示div。
<script>
function getParam(name, url) {
if (!url) {
url = window.location.href;
}
var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(url);
if (!results) {
return 0;
}
return results[1] || 0;
}
$(document).ready(function(){
var div_id=getParam("div_id");
if(div_id!=0){
//hide all (you could add common class_name for div to hide-all at once)
$("#first").hide();
$("#second").hide();
$("#third").hide();
$("#"+div_id).show(); //show div which id is passed in url parameter
}
});
重定向时
http://www.yourdomain.com/pagename.html?div_id=third [This will show third div on page reload]