0

我需要帮助保存这个,我可以交换图像但不能保存它们。我在想也许是一个更新按钮来存储图像。或者在进行更改时自动保存。有人提到饼干什么的。我不熟悉 cookie,想要一个更简单的解决方案。实际页面将有大约 100 张图像,并且确实需要保存功能以永久保存更改。

希望有人能弄清楚这一点,已经在这几个小时才能做到这一点提前感谢您只是看这个

<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>Swap demo</title>

<style type="text/css">
#GALLERY td {
height: 200px; width: 200px;
text-align: center;
vertical-align: middle;
}
#GALLERY td img, #GALLERY td img.normal {
border: solid white 5px;
}
#GALLERY td img.highlighted {
border: solid red 5px;
}
</style>

</head>
<body>
  <table id="GALLERY">
  <tr>
      <td>
          <img src="http://www.clearviewarts.com/thumbnails/Puppy In Basket.jpg"      alt="Dogs"/>          
      </td>
      <td>
          <img src="http://www.clearviewarts.com/thumbnails/BabyIndy.jpg" alt="Dogs"/>          
      </td>
      <td>
          <img src="http://www.clearviewarts.com/thumbnails/HarlequinDane.jpg" alt="Dogs"/>          
      </td>
  </tr>
  <tr>
      <td>
          <img src="http://www.clearviewarts.com/thumbnails/Pug.jpg" alt="Dogs"/>          
      </td>
      <td>
          <img src="http://www.clearviewarts.com/thumbnails/Wagner-edit1.jpg" alt="Dogs"/>          
      </td>
      <td>
          <img src="http://www.clearviewarts.com/thumbnails/CanusAngelicus.jpg" alt="Dogs"/>          
      </td>
  </tr>
  </table>

<script type="text/javascript">
var pix = document.getElementById("GALLERY").getElementsByTagName("img");
for ( var p = 0; p < pix.length; ++p )
{
pix[p].onclick = picclick;
}

var firstImage = null;
function picclick( )
{
// to cancel a swap, click on first image again:
if ( firstImage == this ) 
{
    this.className = "normal";
    firstImage = null;
    return;
}
// is this first image clicked on?
if ( firstImage == null )
{
    // yes
    firstImage = this;
    this.className = "highlighted";
    return; // nothing more to do
}
// aha! second image clicked on, so do swap
firstImage.className = "normal";
var temp = this.src;
this.src = firstImage.src;
firstImage.src = temp;
firstImage = null;

}
</script>
</body>
</html>
4

1 回答 1

0

这就是我会做的(我希望这会有所帮助)。

  • 在 JS 中(在服务器上)构建一个图像名称数组。
  • 根据数组(通过 JS)渲染 HTML。
  • 如果用户进行图像交换,则更改数组并重新渲染。
    • 渲染不需要从服务器中提取任何数据,因此不会闪烁。
    • onclick 事件应该告诉更新函数哪个图像正在被更改。
  • 如果要保存显示顺序,请将当前数组 POST 回服务器。

如果这听起来太复杂,看看这些

看看http://owenberesford.me.uk/17690427/sample.html 但请知道:

  • 对于“真实”代码,我通常从一个测试用例开始......
  • 这适用于 FF 和 Opera(均为 Linux),未在任何 MSIE 上进行测试。
  • 为了允许最大的自由,没有使用任何框架。
  • 一切都在客户端上运行,所以你可以查看/保存。
于 2013-07-17T04:18:36.203 回答