是否可以用Javascript保存可移动div的状态?

发布于 2025-01-07 20:41:48 字数 124 浏览 0 评论 0原文

所以我有一个带有 div 的页面,我可以拖动它。是否有可能 - 没有 JSON 或数据库访问来保存这些 div 的位置,以便当我下次打开页面时它们位于我离开它们的位置?这是一个本地文件,因此我可以写入该文件 - 如果这是一个考虑因素。

So I have a page with divs which I can drag. Is it possible - without JSON or database access to save positions of these divs so that when I open the page next time they are in the same place as I left them? This is a local file so I CAN write to the file - if that is at all a consideration.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

紫瑟鸿黎 2025-01-14 20:41:48

我建议阅读这个问题/答案来了解如何使用 JavaScript 获取 div 的位置: 获取 div/span 标签的位置

之后,只需使用 JavaScript 将数据保存在 cookie 中即可。这里有一个一个不错的教程来帮助您开始。

I suggest reading this question/answer to learn how to get the position of a div with JavaScript: Get the position of a div/span tag.

After that, simply use JavaScript to persist the data in a cookie. Here's a decent tutorial to get you started on that.

殤城〤 2025-01-14 20:41:48

您是否尝试过使用cookies来存储信息。 IT 将允许一种方法来保存窗口属性,而不需要返回服务器端。

设置 COOKIE

function setCookie(c_name,value,exdays)
{
   var exdate=new Date();
   exdate.setDate(exdate.getDate() + exdays);
   var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
   document.cookie=c_name + "=" + c_value;
}

获取 COOKIE

function getCookie(c_name)
{
var i,x,y,ARRcookies=document.cookie.split(";");
for (i=0;i<ARRcookies.length;i++)
{
  x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
  y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
  x=x.replace(/^\s+|\s+$/g,"");
  if (x==c_name)
    {
    return unescape(y);
    }
  }
}

检查 COOKIE

function checkCookie()
{
var username=getCookie("username");
  if (username!=null && username!="")
  {
  alert("Welcome again " + username);
  }
else
  {
  username=prompt("Please enter your name:","");
  if (username!=null && username!="")
    {
    setCookie("username",username,365);
    }
  }
}

Have you tried using cookies to store the information. IT would allow a means to save the window properties, and not reach back server side.

SET COOKIE

function setCookie(c_name,value,exdays)
{
   var exdate=new Date();
   exdate.setDate(exdate.getDate() + exdays);
   var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
   document.cookie=c_name + "=" + c_value;
}

GET COOKIE

function getCookie(c_name)
{
var i,x,y,ARRcookies=document.cookie.split(";");
for (i=0;i<ARRcookies.length;i++)
{
  x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
  y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
  x=x.replace(/^\s+|\s+$/g,"");
  if (x==c_name)
    {
    return unescape(y);
    }
  }
}

CHECK COOKIE

function checkCookie()
{
var username=getCookie("username");
  if (username!=null && username!="")
  {
  alert("Welcome again " + username);
  }
else
  {
  username=prompt("Please enter your name:","");
  if (username!=null && username!="")
    {
    setCookie("username",username,365);
    }
  }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文