Photoswipe直接全屏打开照片

时间:2013-07-02 14:18:06

标签: jquery-mobile cordova photoswipe

我想直接在全屏幕上使用jQuery Mobile打开Photoswipe图库,而不是默认的<ul> <li>列表。我在上面看到了示例页面 从插件站点下载的软件包(08-exclusive-mode.html)但我无法在我的网站上运行它。

我尝试了这个javascript代码:

$(document).on('pageshow','#photo', function() {
  (function(window, PhotoSwipe) {
    document.addEventListener('DOMContentLoaded', function() {
    var options = {
     preventHide: true },
     instance = PhotoSwipe.attach( window.document.querySelectorAll('#Gallery a'), options );
     instance.show(0);
   }, false);
  } (window, window.Code.PhotoSwipe));
});

这是html页面:

<div data-role="page" id="photo">
    <div data-role="header">
        <h1>Second</h1>
    </div><!-- /header -->
    <div data-role="content">
       <ul id="Gallery" class="gallery">
         <li><a href="/ico4.jpg" rel="external"><img src="/ico.jpg" alt="Image 001" /></a></li>
         <li><a href="/ico4.jpg" rel="external"><img src="/ico.jpg" alt="Image 002" /></a></li>
         <li><a href="/ico4.jpg" rel="external"><img src="/ico.jpg" alt="Image 003" /></a></li>
         <li><a href="/ico4.jpg" rel="external"><img src="/ico.jpg" alt="Image 004" /></a></li>
         <li><a href="/ico4.jpg" rel="external"><img src="/ico.jpg" alt="Image 005" /></a></li>
         <li><a href="/ico4.jpg" rel="external"><img src="/ico.jpg" alt="Image 006" /></a></li>
         <li><a href="/ico4.jpg" rel="external"><img src="/ico.jpg" alt="Image 007" /></a></li>
         <li><a href="/ico4.jpg" rel="external"><img src="/ico.jpg" alt="Image 008" /></a></li>
         <li><a href="/ico4.jpg" rel="external"><img src="/ico.jpg" alt="Image 009" /></a></li>
         <li><a href="/ico4.jpg" rel="external"><img src="/ico.jpg" alt="Image 010" /></a></li>
       </ul>
     </div><!-- /content -->
     <div data-role="footer">
       <h4>Page Footer</h4>
    </div><!-- /footer -->
</div>

你能帮助我吗?

2 个答案:

答案 0 :(得分:4)

工作示例:http://jsfiddle.net/Gajotres/PFqVs/

<强>使用Javascript:

这足以通过 Photoswipe

运行 jQuery Mobile 1.3.1.
$(document).on('pagebeforeshow', '#index', function(){   
    var myPhotoSwipe = $(".gallery li a").photoSwipe({
        jQueryMobile: true,
        loop: false,
        enableMouseWheel: false,
        enableKeyboard: false
    });

    myPhotoSwipe.show(0);      
});

答案 1 :(得分:0)

如果你不知道项目的密钥,你可以循环“instance.originalImages”并在图片的路径中搜索关键字。

for(var i=0; i<instance.originalImages.length; i++){
  if(instance.originalImages[i].pathname.search(keyword)!= -1){
     instance.show(i);  
  }
}