我要求点击按钮时页面需要重新加载。重新加载后我需要显示隐藏的div。
下面是我描述我的问题的要求?
1.在我的html代码中包含一些文本和按钮,在这个页面中,默认情况下我隐藏了一些文本div 2.当我点击按钮时我正在重新加载页面。在重新加载页面后我想要显示隐藏的div
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#test2").css("visibility","hidden");
alert("reloaded");
$("#p1").click(function(){
setTimeout(function(e){
alert("inside time out");
$("#p2").css("visibility","visible");
},3000);
location.reload();
});
});
</script>
</head>
<body>
<div id="myDiv">
<p id="p1">This is sample text</p>
</div>
<div id="test2">
<p id="p2">this is invisible text</p>
</div>
</body>
</html>
提前致谢
答案 0 :(得分:2)
您可以在用户点击按钮时设置localStorage
项,并在页面加载时查找localStorage
项并有条件地显示隐藏的div。
var $hidden = $('.hidden');
localStorage.getItem('show') && $hidden.show();
$('button').on('click',function() {
localStorage.setItem('show',true);
window.location.reload(false);
})
.hidden {
display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="hidden">hidden</div>
<button>click</button>
答案 1 :(得分:1)
首先,如果您要求点击按钮,则需要一个按钮,而不是段落。
接下来,使用visibility
(没有显示),而不是display
属性(仍然在页面上为元素分配空间),使用$(document).ready(function(){
// Check to see if this is a page reload or not by seeing if a value was placed
// into localStorage from a previous page load
if(localStorage.getItem("loadedEarlier")){
// Page has already loaded earlier
$("#test2").css("display","block");
}
$("#btn").click(function(){
location.reload();
});
// Place a value into localStorage
localStorage.setItem("loadedEarlier", "yes")
});
。
最重要的是,如果您重新加载文档,那么您拥有的任何本地变量都将丢失。你需要坚持某种&#34; flag&#34;页面加载之间。这可以通过多种方式完成(cookies,sessionStorage,localStorage,服务器端),但 localStorage
可能是最简单的。
由于沙盒,此代码实际上无法在Stack Overflow代码段环境中运行,但您可以看到 here 的工作版本。
见内联其他评论:
/* No need for JavaScript to initially hide the element which
can cause the usre to see it momentarially before the JS runs.
Set its default display to none instead. */
#test2 { display:none; }
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="btn">Click to Reload</button>
<div id="test2"><p id="p2">this is invisible text</p></div>
&#13;
import java.lang.*;
public class DataMatrix {
private double[][] dMatrix;
public DataMatrix(String text) {
String[] line = text.split("\n");
// Creates an array for the CSV file
String[][] sMatrix = new String[line.length][];
for(int i=0; i < line.length; i++)
sMatrix[i] = text.split(",");
System.out.println("Original String: ");
for(int x=0; x < sMatrix.length; x++) {
for(int j=0; j <= line.length; j++) {
System.out.println(sMatrix[x][j]);
}
}
double[][] dMatrix = new double[sMatrix.length][];
System.out.println("Converted to double: ");
for(int x=0; x < sMatrix.length; x++) {
dMatrix[x] = new double[sMatrix[x].length];
for(int j=0; j <= sMatrix.length; j++) {
dMatrix[x][j] = Double.parseDouble(sMatrix[x][j]);
System.out.println(dMatrix[x][j]);
}
}
}
}
&#13;