Question

Hey, it's me again with a question about jquery and that gridlayout I made a php template with switch and the code i am inserting is this

<div id="wrapper">

<div id="grid">
<div class="box"><img src="img/an_005_BUR_thebeat.jpg" width="310px" height="438px" />3 index</div>
<div class="box"><img src="img/an_014_GUE_homme_a.jpg" width="310px" height="404px" />4 Culture</div>
<div class="box"><img src="img/an_044_BVL_springmotiv.jpg" width="310px" height="310px" />5 Pharma</div>
<div class="box"><img src="img/an_039_AN_diskette.jpg" width="310px" height="465px" />6 Pharma IT</div>
<div class="box"><img width="310px" height="100px" />7 Culture</div>
<div class="box"><img width="310px" height="120px" />8 Cosmetics</div>
<div class="box"><img width="310px" height="400px" />9 IT</div>
<div class="box"><img width="310px" height="400px" />10 Culture</div>
<div class="box"><img width="310px" height="400px" />11 IT</div>
<div class="box"><img width="310px" height="400px" />12 Culture</div>
</div>

</div>
    <script type="text/javascript">

    $(document).ready(function(){

        $('#grid').gridLayout('.box', {col_width: 340, min_cols: 2});
        // options - (values above are the defaults)
        // col_width: the width of each grid block
        // min_cols: the minimum number of cols on the page (reducing browser width below this will not decrease number of columns). Set to your largest block (3 = block spans 3 columns)

        // gridLayout.placeAtEnd() - for placing a block at bottom right of grid
        var final_block = $('');
        $('#grid').gridLayout.placeAtEnd( final_block );

        // gridchange event fires when window resize forces a grid refresh
        $('#grid').bind( "gridchange", function(e){
            console.log('gridchange event fired');
            // reposition the final block
            $('#grid').gridLayout.placeAtEnd( final_block );
        });

        // this forces a redraw of grid
        $('body').gridLayout.refresh();

        // returns heights of each column
        console.log( 'gridLayout.info():', $('#grid').gridLayout.info() );
    });

</script>

The jquery script and the plugin are loaded in the header. When i try to run this. Firebug tells me:

"Node cannot be inserted at the specified point in the hierarchy" code: "3"

Do anybody know how to fix this?

Here is an example i loaded up: http://18735.webhosting7.1blu.de/neu/index.php?item=lifestyle

Was it helpful?

Solution

I am pretty sure your error is with the following. What is $('') !

var final_block = $('');
$('#grid').gridLayout.placeAtEnd( final_block ); 

It works if I say

var final_block = $('<div />');
$('#grid').gridLayout.placeAtEnd( final_block );

OTHER TIPS

The error message is displayed (in firebug) if you have incorrect html in a $() constructor, as well as when you try to append a node to itself, e.g.:

$div = $('<div />');
$div.append($div);
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top