我返回的XML具有的图像,都在不同尺寸的多个值。我试图在我的XSL中加载图像,但它总是选择以XML格式返回的最小(第一个)图像,所以它非常像素化。访问XML节点值多张图片
如何根据屏幕的大小让浏览器选择正确的浏览器?因为第一个也可能是一个.ico它是这样的小桌面是非常像素化。
下面是XML数据和XSL文件中的代码。
XSL:
<xsl:for-each select="lfm/tracks/track">
<xsl:sort order="descending" data-type="number" select="playcount"/>
<xsl:if test="position() <= 8">
<xsl:value-of select="result"/>
<div class="col s3 m3">
<div class="card large">
<div class="card-image">
<img>
<xsl:attribute name="src">
<xsl:value-of select="image"/>
</xsl:attribute>
</img>
<span class="card-title"><xsl:value-of select="name"/></span>
</div>
<div class="card-content">
<p><xsl:value-of select="name"/>
</p>
<p><xsl:value-of select="artist/name"/>
</p>
<p> Playcount:
<xsl:value-of select="playcount"/>
</p>
</div>
<div class="card-action">
<a href="view_song.html"><p>Link:
<xsl:value-of select="url"/>
</p></a>
</div>
</div>
</div>
</xsl:if>
</xsl:for-each>
XML:
<track>
<name>HUMBLE.</name>
<duration>0</duration>
<playcount>1063735</playcount>
<listeners>136852</listeners>
<mbid></mbid>
<url>https://www.last.fm/music/Kendrick+Lamar/_/HUMBLE.</url>
<streamable fulltrack="0">0</streamable>
<artist>
<name>Kendrick Lamar</name>
<mbid>381086ea-f511-4aba-bdf9-71c753dc5077</mbid>
<url>https://www.last.fm/music/Kendrick+Lamar</url>
</artist>
<image size="small">https://lastfm-img2.akamaized.net/i/u/34s/a4a35fcdf62b8a532039012653eeea14.png</image>
<image size="medium">https://lastfm-img2.akamaized.net/i/u/64s/a4a35fcdf62b8a532039012653eeea14.png</image>
<image size="large">https://lastfm-img2.akamaized.net/i/u/174s/a4a35fcdf62b8a532039012653eeea14.png</image>
<image size="extralarge">https://lastfm-img2.akamaized.net/i/u/300x300/a4a35fcdf62b8a532039012653eeea14.png</image>
</track>
你是如何使用这个xsl代码片段的?它如何运行? – NMGod
我发现我可以访问不同的图像,如果我像这样的图像下标[4]。 – haydg8
提供更好格式的答案。 – NMGod