2013-04-01 43 views
0

我用jquery同位素来显示我的投资组合。 我想加载所有的同位素项目感谢xml文件。jQuery的附加XML数据

我试图追加同位素元素与jQuery和XML数据。

我的脚本看起来像这样:

$(document).ready(function() 
    { 
$.get('data.xml', function (d) { 

    $(d).find('element').each(function() { 
     var $element = $(this); 
     var id = $element.attr("id"); 
     var size = $element.attr("size"); 
     var category = $element.attr("category"); 
     var urlpage = $element.find('urlpage').text(); 
     var urlimage = $element.find('urlimage').text(); 
     var title = $element.find('title').text(); 

$('<div class= " element '+ size +' '+ category +' " id="_'+id+'"></div>').html('<a class= "link" href="' + urlpage + '"><img src="' + urlimage + '" class="thumbnail" />' + '<div>' + '<span>' + + '<span>' + '<i class="icon-pencil"></i>' + '&nbsp;&nbsp;' + title + '</span><span class="more">more.</span></div></a></div>').appendTo('#container'); 


}); 

$container.isotope({ 
    itemSelector : '.element', 
    layoutMode: 'masonryHorizontal', 
    masonryHorizontal: { 
    rowHeight: 210 
    }, 
}); 

}); 
}); 

而且我这样的XML:

<?xml version="1.0" encoding="utf-8" ?> 

<element> 
    <element id="13" size="" category="portfolio"> 
    <urlpage>/portfolio/dock.html</urlpage> 
    <urlimage>./Post thumbnail images/formlabs.jpg</urlimage> 
    <title>Formlabs : An offordable 3D printer on kickstarter</title> 
</element> 

<element> 
    <element id="12" size="" category="portfolio"> 
    <urlpage>/portfolio/dock.html</urlpage> 
    <urlimage>./Post thumbnail images/Bumper.JPG</urlimage> 
    <title>Minimal Bumper for iPhone 5</title> 
</element> 

但没有任何反应....我想我有我的脚本错误... 。

怎么了?

对不起,我是法国人。

回答

1

您的XML无效。你有一个元素,里面有另一个没有关闭的元素。此外,您的所有标签必须位于根标签内(例如元素)。

你为什么不去做这样的:

<?xml version="1.0" encoding="utf-8" ?> 
<elements> 
<element id="13" size="" category="portfolio"> 
    <urlpage>/portfolio/dock.html</urlpage> 
    <urlimage>./Post thumbnail images/formlabs.jpg</urlimage> 
    <title>Formlabs : An offordable 3D printer on kickstarter</title> 
</element> 

<element id="12" size="" category="portfolio"> 
    <urlpage>/portfolio/dock.html</urlpage> 
    <urlimage>./Post thumbnail images/Bumper.JPG</urlimage> 
    <title>Minimal Bumper for iPhone 5</title> 
</element> 
</elements> 
+0

谢谢。我在2min前看到了这个jsut ...现在我的附加元素起作用了。但是,如果我在同位素容器(#容器)内追加没有任何反应......如果我追加到另一个非同位素容器中,它可以工作。 – lolo

+0

我成功将元素追加到容器。但同位素回叫不起作用... – lolo

+0

确定我找到与此:$ container.isotope('insert',$('

').html('' + '
' + '' + '' + '  ' + title + 'more.
')) – lolo