0

モーダル内に galleryView をロードしようとしていますが、機能していないようです。

galleryView を単独で使用しても問題ないようです。これは以前に尋ねられたことは知っていますが、他の投稿で解決策を見つけることができませんでした。

モーダル内の galleryView の実行可能な例はありますか?

編集:

content += "<a href='#openModal'>Pictures</a>";

$(function(){
    $('#myGallery').galleryView();
});

content +=  '<div id="openModal" class="modalDialog">'+
                    '<div id="dialog">'+
                    '<a href="#close" title="Close" class="close">X</a>'+
                    '<h3>'+place.name+'</h3>'+
                    '<p>'+place.formatted_address+'</p>';

content += "<ul id='myGallery'>";

//Loop for thumbnail                                
for (var i = 0; i < place.photos.length; i++) {
    thumbnail = place.photos[i].getUrl({'maxWidth': 88, 'maxHeight': 88});
    content += "<li><img src='"+thumbnail+"' alt='"+place.name+"'/>";

}
content += "</ul>";

content +=  '</div></div>';

Infowindow 内でコンテンツを設定でき、問題なく表示できましたが、galleryView を使用しようとすると、機能しなくなりました。空白を表示するだけです。

助言がありますか?

4

1 に答える 1

0

これはギャラリービューをロードする簡単なダイアログコードです。私はその動作をテストしました

  <script type="text/javascript">
    var place = {name:"first name ", formatted_address:"street address line 1"};
    place.photos = [{url:"http://www.spaceforaname.com/galleryview/img/photos/bp1.jpg",name:"Lone Tree Yellowstone"},{url:"http://www.spaceforaname.com/galleryview/img/photos/bp2.jpg",name:"Is He Still There?!"},{url:"http://www.spaceforaname.com/galleryview/img/photos/bp4.jpg",name:"Noni Nectar For Green Gecko"},{url:"http://www.spaceforaname.com/galleryview/img/photos/bp7.jpg",name:"Flight of an Eagle Owl"}];

    var content = "<a href='#openModal'>Pictures</a>";

    content +=  '<div id="openModal" class="modalDialog" style="display:none">'+
                        '<div id="dialog">'+
                        '<a href="#close" title="Close" class="close">X</a>'+
                        '<h3>'+place.name+'</h3>'+
                        '<p>'+place.formatted_address+'</p>';

    content += "<ul id='myGallery'>";

    //Loop for thumbnail                                
    for (var i = 0; i < place.photos.length; i++) {
        thumbnail = place.photos[i].url;
        content += "<li><img src='"+thumbnail+"' alt='"+place.photos[i].name+"'/>";

    }
    content += "</ul>";

    content +=  '</div></div>';

    $(function(){
        $( "#triggerdialog" ).on( "click", function() {
          $('#model-wrapper').html(content);          
        });
        $("body").on("click","a[href='#openModal']", function() {
            console.log("model click");
            $('#myGallery').galleryView();
            $("#dialog" ).dialog();
        });
    });
</script>

   <body>
    <button id="triggerdialog">Load Content</button>
    <div id="model-wrapper" />
</body>

これがあなたの質問による更新された回答です

于 2015-03-03T16:41:23.237 に答える