Jquery 如何创建表格中的图片效果?

Jquery 如何创建表格中的图片效果?,jquery,image,picturegallery,Jquery,Image,Picturegallery,我想创造一种效果,在表格中有一堆图片(扔掉,没有特定的顺序,图片片段覆盖其他图片,垂直,水平,倾斜等),当用户悬停在一张图片上时,它会变大,但我不知道如何开始。到目前为止,我得到的是从服务器中的文件夹中自动生成的图像列表(在ul)。谁能给我指点一下怎么做 我的问题是如何做到这一点?我从来没有做过像这样的远程效果,或者总是搜索插件,但我想自己做这个 编辑 分解项目: 从文件夹加载图片(这部分我已经完成了) 在浏览器上随机显示它们(我不知道如何使图像看起来像是一堆扔到桌子上的图片,没有组织,一些放

我想创造一种效果,在表格中有一堆图片(扔掉,没有特定的顺序,图片片段覆盖其他图片,垂直,水平,倾斜等),当用户悬停在一张图片上时,它会变大,但我不知道如何开始。到目前为止,我得到的是从服务器中的文件夹中自动生成的图像列表(在
ul
)。谁能给我指点一下怎么做

我的问题是如何做到这一点?我从来没有做过像这样的远程效果,或者总是搜索插件,但我想自己做这个

编辑

分解项目:

  • 从文件夹加载图片(这部分我已经完成了)
  • 在浏览器上随机显示它们(我不知道如何使图像看起来像是一堆扔到桌子上的图片,没有组织,一些放在另一些上面,以不同的角度旋转),这是我遇到更多麻烦的地方
  • 让图像在悬停状态下变大。(我能做到)
  • 如果单击,图像将显示一些额外的信息(我不确定这一点,但我猜我将添加一个div,并用单击图像的信息动态填充它)
    • 这是我对“抛出”效果的看法:

      HTML:

      Javascript:

      var list = document.getElementById('x');
      var elements = list.getElementsByTagName('li');
      for (var i=0; i<elements.length; i++) {
          // random positon between 0px and 300px
          elements[i].style.left = Math.ceil(Math.random()*300) + 'px';
          elements[i].style.top = Math.ceil(Math.random()*300)+ 'px';
      
          // random angle between -90 and 90 degrees
          var rot = 'rotate(' + (Math.ceil(Math.random()*180) - 90) + 'deg)';
          elements[i].innerHTML = rot;
          // Firefox rotation
          elements[i].style.MozTransform = rot;
          // Safari/Chrome rotation
          elements[i].style.WebkitTransform = rot;
          // Opera Rotation
          elements[i].style.OTransform = rot; 
          // all the rest
          elements[i].style.roration = Math.ceil(Math.random()*180) - 90;
      }
      
      var list=document.getElementById('x');
      var elements=list.getElementsByTagName('li');
      
      对于(var i=0;i你到底有什么问题?你应该把项目分解成几个部分,如果你被其中任何一个问题困住了,你应该问一些具体的问题。很好的建议,我把它分解了一点,也许更多?听起来你对如何开始有一些想法。对于图像的随机性,你可以尝试循环通过每个i获得随机位置、旋转角度和z指数。我建议潜入并尝试不同的东西,这是最好的学习方式。你的意思是这样的吗@Jack谢谢,这正是我想要做的(潜入并学习),让我检查一下。
      var list = document.getElementById('x');
      var elements = list.getElementsByTagName('li');
      for (var i=0; i<elements.length; i++) {
          // random positon between 0px and 300px
          elements[i].style.left = Math.ceil(Math.random()*300) + 'px';
          elements[i].style.top = Math.ceil(Math.random()*300)+ 'px';
      
          // random angle between -90 and 90 degrees
          var rot = 'rotate(' + (Math.ceil(Math.random()*180) - 90) + 'deg)';
          elements[i].innerHTML = rot;
          // Firefox rotation
          elements[i].style.MozTransform = rot;
          // Safari/Chrome rotation
          elements[i].style.WebkitTransform = rot;
          // Opera Rotation
          elements[i].style.OTransform = rot; 
          // all the rest
          elements[i].style.roration = Math.ceil(Math.random()*180) - 90;
      }