開発しようとしている 1 つのスクリプトで問題が発生したため、投稿しています。
私が作成しようとしているのは、Instagram から画像を受け取るギャラリーです。この 2 つのタスクを達成するために、ニーズに合った 2 つのプラグインを見つけましたが、両方を融合させることはできません。
私は Jquery に比較的慣れていないため、実行しようとしているスクリプトがコードの一部にのみ影響する理由がわかりません。
このサンプル ギャラリーには 2 つの基本的な部分があります。
1) 開発者が事前にロード:
<div class="content-primary">
<ul class="iGallery" id="iGallery">
<li>
<a href="http://scontent-b.cdninstagram.com/hphotos-xfa1/t51.2885-15/10817900_1528499780732950_533530016_n.jpg">
<img src="http://scontent-b.cdninstagram.com/hphotos-xfa1/t51.2885-15/10817900_1528499780732950_533530016_s.jpg">
<li><a class="ui-link" href="http://scontent-b.cdninstagram.com/hphotos-xfa1/t51.2885-15/10831784_752863841449953_2058216615_n.jpg"><img src="http://scontent-b.cdninstagram.com/hphotos-xfa1/t51.2885-15/10831784_752863841449953_2058216615_s.jpg"></a></li></ul>
</a>
</li>
</ul>
そして、instagram api のおかげで動的に追加されるもの:
<script type="text/javascript">
(function() {
var s = document.createElement('script'), t = document.getElementsByTagName('script')[0];
s.type = 'text/javascript';
s.async = true;
s.src = 'http://api.flattr.com/js/0.6/load.js?mode=auto';
t.parentNode.insertBefore(s, t);
})();
/* ]]> */
function createPhotoElement(photo) {
var innerHtml;
innerHtml= $('<img>')
.attr('src', photo.images.thumbnail.url);
innerHtml = $('<a>')
.attr('href', photo.images.standard_resolution.url)
.append(innerHtml)
.append(innerHtml)
.addClass( "ui-link" );
return $('<li>')
.append(innerHtml);
}
function didLoadInstagram(event, response) {
var that = this;
$.each(response.data, function(i, photo) {
$(that).append(createPhotoElement(photo));
});
}
$(document).ready(function() {
var clientId = 'baee48560b984845974f6b85a07bf7d9';
$('.iGallery').on('didLoadInstagram', didLoadInstagram);
$('.iGallery').instagram({
hash: 'usa123',
count: 1,
clientId: clientId
});
});
</script>
さて、主な問題は、ギャラリーを処理する部分が、手動で追加された部分のみを読み取るように見え、instagram api のおかげで来る部分を読み取らないことです。
スクリプトは のような画像の属性を変更するため、私の問題はスクリプトがロードされる時間に関連していると確信していますが、href to data-href
その情報を事前にロードしようとしましたが、同じ結果を受け取りました。
私の問題を視覚的に理解するために、codepen にスクリプトを用意しました。
http://codepen.io/anon/pen/XJdbZR
そして、これは私が持っている考えであり、ロードごとの情報のみがスクリプトによって変更されていることを示しています
あらゆる種類の助けやヒントに感謝します。ありがとう