【问题标题】:Fancybox change urlFancybox 更改网址
【发布时间】:2012-04-16 19:14:43
【问题描述】:

我有一个 pinterest 风格的画廊。我想这样做,所以当您单击图像时,它会打开一个带有更大图像的花式框,然后在框中打开它下面的 cmets 和其他东西。但我希望每个图像/图像花式框都有自己的 url,这样人们就可以分享链接和东西。关于如何做到这一点的任何想法?

提前致谢

【问题讨论】:

    标签: php jquery fancybox


    【解决方案1】:

    只需使用 fancybox 作为默认值。当 onComplete 事件被引发时,为 fancybox 容器操作 DOM 和 serach,然后添加 cmets 和其他东西。

    【讨论】:

    • 默认使用fancybox是什么意思?
    【解决方案2】:

    您可以使用 HTML5 历史记录更改浏览器中的 url。 https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history

    然后在整个页面加载时,您可以使用 window.location 获取 url 并修改 DOM 以满足您的需要。

    【讨论】:

      【解决方案3】:

      有两种方法:
      1. 像 Facebook 一样:http://spoiledmilk.dk/blog/html5-changing-the-browser-url-without-refreshing-page
      2. 像 Twitter 那样:
      您可以使用 location.hash
      //example.com/
      location.hash = 'foo'; //becomes example.com/#foo

      访问和更改 url 的 # 部分

      【讨论】:

        【解决方案4】:

        我会通过创建一个 PHP 脚本来解决这个问题,该脚本接受图像的 id,例如outputimage.php?id=123 然后输出图片的html,cmets etx。可以使用 jQuery ajax 调用来调用此脚本,该调用从脚本中请求 html,然后将其放置在 fancybox div 中。

        另一个名为image.php?id= 的页面再次接收图像的id 并使用outputimage.php 在单独的页面布局中显示html。然后,此页面将成为您的独立布局。

        【讨论】:

          猜你喜欢
          • 2012-01-22
          • 2011-08-27
          • 2015-03-04
          • 2012-09-15
          • 2014-06-12
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多