如何仅使用Java脚本一次重新加载网页?

问题描述 投票:0回答:1

我使用调整大小来重新加载页面,但是我想要只重新加载一次,当页面大小从小于768px或大于768px变大时。现在我的代码

$(window).resize(function(){
	// if(document.body.clientWidth <= ipadWidth && x = 1){
		location.reload()
	// }
});
javascript css resize reload
1个回答
0
投票

我不完全确定这是否是您要查找的内容,但是当resize大于innerWidth时,下面的代码每次仅在768px上触发一次,如果小于768px,则一次触发。

注意:在这种情况下,无法重新加载页面,因为刷新页面后所有值都将重置。

如果您仍然想重新加载页面,那么您需要将这些变量保存在数据库中,但这还不够,因为那样您就需要跟踪每个用户的会话(即使要考虑很多情况),这是绝对是个杀手.。

我的建议是最终避免强制刷新。

如果您提供有关为什么要强制重新加载页面的更多信息,那么我可能会建议一种更好的解决方案。

如果您的问题是根据屏幕尺寸设置页面样式,请改用media queries

例如:

@media screen and (max-width: 768px) {
  your CSS here
}

let isSmall = false
let isBig = false
$(window).resize(function(){
   if (window.innerWidth >= 768 && !isBig) {
      isBig = true
      //location.reload()
      console.log('big once')
   }
   if (window.innerWidth < 768 && !isSmall) {
       isSmall = true
       //location.reload()
       console.log('small once')
   }
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

希望有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.