2

我正在尝试根据与我的画廊相关的任意数据进行一些图像处理。

  gallery.html('');
    $.each(data.photos, function(key, photo) {

        var item = "<li><a href='http://stage.domain.com/assets/img/user/"+photo.full+"'><img src='http://stage.domain.com/assets/img/user/"+photo.med+"'/></a></li>";

        gallery.append(item);
    });
    gallery.trigger('create');

    var options = {


        enableMouseWheel: false , 
        enableKeyboard: false ,
        captionAndToolbarAutoHideDelay:0,
        jQueryMobile:true

    }

    var swipe = $(".gallery a").photoSwipe(options);

    // onDisplayImage
    swipe.addEventHandler(PhotoSwipe.EventTypes.onDisplayImage, function(e){
        console.log('onDisplayImage{');
        console.log('onDisplayImage - e.action = ' + e.action);
        console.log('onDisplayImage - e.index = ' + e.index);
        console.log(swipe.getCurrentImage());
        console.log('onDisplayImage}');
    });

但是 ondisplayimage 事件永远不会被触发,因为 PhotoSwipe 没有定义

 06-14 04:28:45.496: D/CordovaLog(31662): Uncaught ReferenceError: PhotoSwipe is not defined

示例https://github.com/codecomputerlove/PhotoSwipe/blob/master/src/examples/07-custom-toolbar.html不使用我需要的 jquery 实现。所以基本上我如何使用 jquery mobile 连接到事件处理程序。

4

1 回答 1

6

改变:

swipe.addEventHandler(PhotoSwipe.EventTypes.onDisplayImage, function(e){

至:

swipe.addEventHandler(window.Code.PhotoSwipe.EventTypes.onDisplayImage, function(e){

我使用 jQuery 编写内容并像这样直接调用类解决了这个问题。

于 2012-07-21T01:23:48.577 回答