我在点击链接时使用了 div 切换。每个 div 都有自己的表单,可以提交到新页面,然后我使用返回链接转到上一页。但它不会打开在表单提交时处于事件状态的特定 div。这是我正在使用的代码
<style>
.selected{
color:red;
}
</style>
<a href="javascript:void(0);" class="pro" target="1">
link2
</a>
<a href="javascript:void(0);" class="pro" target="2">
link 1
</a>
<div id='div1' class="itargetDiv" >
<form method="post" action="a.php">
<input type="text" name="t1">
<input type="text" name="t2"><br>
<input type="submit" name="s1">
</form>
</div>
<div id='div2' class="itargetDiv" style="display:none;">
<form method="post" action="a.php">
<input type="text" name="t3">
<input type="text" name="t4">
<input type="text" name="t5">
<input type="text" name="t6"><br>
<input type="submit" name="s2">
</form>
</div>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.2.js"> </script>
<script type="text/javascript">
$(document).ready(function(){
$(".pro").click(function(){
$(this).addClass("selected").siblings().removeClass("selected");
var pullNumber = $(this).attr("target");
$("#div"+pullNumber).show(500).siblings(".itargetDiv").hide(500);
});
});
</script>
最佳答案
我想您需要使用 session 或本地存储。我认为这不是最佳解决方案,但这会奏效......
在你的 jquery 中添加这个
$(document).ready(function(){
var a = localStorage.getItem("active_section");
if(a=='1')
$("#div"+a).show(500).siblings(".itargetDiv").hide(500);
else if(a=='2')
$("#div"+a).show(500).siblings(".itargetDiv").hide(500);
else
$("#div1").show(500).siblings(".itargetDiv").hide(500);//Default section u want to show
$(".pro").click(function(){
$(this).addClass("selected").siblings().removeClass("selected");
var pullNumber = $(this).attr("target");
localStorage.setItem("active_section",pullNumber); //Add this line
$("#div"+pullNumber).show(500).siblings(".itargetDiv").hide(500);
});
});
关于javascript - 单击后退链接时如何返回到上一页中处于事件状态的 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33932605/