1

BlocksIt.js jQuery プラグインを使用しています。ユーザーが上から 90% (ほぼ下) までスクロールしたときに、URL からコンテンツをロードしたいと考えています。URL から (class="grid" を使用して) コンテンツをロードし、.grid クラスのすべてを '#container' ブロックに追加する方法。私はすでにload()、$.get()、$.ajax()を試しました。フィドル

コンテンツをロードしても、「#container」ブロックに適切に配置されません (バックグラウンドまたは別の場所にコンテンツを置き去りにします)。BlocksIt() 関数を再度呼び出してみます。

        $('#container').BlocksIt({
            numOfCol: 5,
            offsetX: 8,
            offsetY: 8
        });

役に立ちません。私ができる最善のことは次のとおりです(また、うまくいきません):

        link = 'http://www.inwebson.com/demo/blocksit-js/demo2/';
        $.get(link, function (data) {
            $(data).find(".grid").appendTo("#container");
        });
4

1 に答える 1

1

あなたがblocksitを使って新しいブロックを追加したいと言っているなら

これが私がやった方法です。以前のすべてのブロックにうまく追加されます

HTML

<div class="grid-layout">
    <div class="grid">content</div>
</div>

JS

$(document).ready(function() {
    dynamicGrid();
});

function dynamicGrid()
{ 
    $('.grid-layout').BlocksIt({  
      numOfCol: 4,
      offsetX: 2,
      offsetY: 2,
      blockElement: '.grid',
    });        
};

これは、グリッドレイアウトでうまく取得して追加する方法です

var url='your url to get data';

$.get( url, function(data) {
    $(".grid-layout").append(data);
    dynamicGrid();
}).fail(function(){
    alert('error');    
})

クリックなど、好きな場所に上記を配置するだけです。

jquery get に返されるデータは、次のようなクラス グリッドの各コンテンツを含む html でなければならないことに注意してください。

<div class="grid">content2</div>
<div class="grid">content3</div>

コンテンツの下にうまく追加されます。

于 2014-01-09T02:23:08.803 に答える