2008 13 elokuu 2008

Tokenizing eroteltu merkkijono sisällä XSL

Jos vaatimus on jakaa solmun arvo XML, joka sisältää eroteltu merkkijono arvon, tulee yksittäisiä kohteita, niin olet tullut oikeaan paikkaan ... vilkaista alla oleva esimerkki. Jos olet perehtynyt hieman XML ja XSL ... enkä usko sinun olisi mitään selitystä.
Myös tämä esimerkki sisältää käyttö XSL toimintoja, kuten xsl: call-malli, xsl: merkkijono-ennen, xsl: merkkijono-jälkeen, jos se mitä olet jälkeen.

XML muokkaamisen (food.xml): -
Oletetaan tehtävänä on tokenize merkkijono erotettu pilkulla, on tunnisteen "avainsanat"

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="food.xsl"?>
<food>
<date>July 2008</date>
<description>All about things we eat everyday</description>
<keywords>Fruits, Vegetables, Pulses, Meat, Cereals </keywords>
</food>

XSL (food.xsl): -

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="utf-8" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/>
<xsl:template match="/">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>XSL 1.0 Delimited String Tokeniser</title>
</head>
<body>
<xsl:value-of select="food/meta"/>
<div >
<xsl:call-template name="tokenize">
<xsl:with-param name="string" select="food/keywords" />
<xsl:with-param name="delimitr" select="','" />
</xsl:call-template>

</div>
</body>
</html>
</xsl:template>
<xsl:template name="tokenize">
<xsl:param name="string" />
<xsl:param name="delimitr" />
<xsl:choose>
<xsl:when test="contains($string, $delimitr)">
<div style="border:1px solid red;">
<h3><xsl:value-of select="substring-before($string,$delimitr)" /></h3>
<xsl:variable name="data" select="substring-before($string,$delimitr)"/>
</div>
<xsl:call-template name="tokenize">
<xsl:with-param name="string" select="substring-after($string, $delimitr)" /><xsl:with-param name="delimitr" select="$delimitr" /></xsl:call-template>
</xsl:when>
<xsl:otherwise>
<div style="border:1px solid red;">
<h3><xsl:value-of select="$string" /></h3>
</div>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>

Saatu teho HTML: -

<div>
<div style="border: 1px solid red;">
<h3>Fruits</h3>
</div>
<div style="border: 1px solid red;">
<h3> Vegetables</h3>
</div>
<div style="border: 1px solid red;">
<h3> Pulses</h3>
</div>
<div style="border: 1px solid red;">
<h3> Meat</h3>
</div>
<div style="border: 1px solid red;">
<h3> Cereals </h3>
</div>
</div>

Tarpeetonta sanoa ... vain muuttaa parametri "delimitr", jotta erotin valitsemaasi


2008 11 elokuu 2008

Lataa Tämä Faux Positioned WordPress Template

Jos olet yksi niistä kaverit (kuten minä), jotka usein tarkistaa CSS hyvin tehty HTML-sivun, inspiroivia tai mitä tahansa, niin olet ehkä huomannut, että olemme käyttäneet faux Paikannus (kuten jo totesin aiemmin artikkelissa olemme käyttäen Faux Absolute Positioning: Brilliant CCS Layout )

Me teimme hyvää työtä tähän malliin, niin ajattelin se mukava jakaa se .... lataamista WordPress Theme (ladatut 194 kertaa)


2008 07 elokuu 2008

ANIMOTO: Really Nice "rikas käyttöliittymä" ilman Flash!

Oletko nähnyt animoto.com? No! Tämä ei ole AD, en todellakaan halunnut sitä! ja se on Suutele ASS UI todellakin

Törmäsin tämän sivuston muutama viikko sitten. Saw ensimmäinen sivu, jälki häiritse. Minulle se oli vain toiseen paikkaan noin rikasta flash sisältöä, jonka avulla käyttäjät voivat ladata kuvia, valitse jokin kappale ja muuntaa sen mukavan kuvan diaesityksen. Lataa FLV, ja laita se mitään sivustolta (YouTube, Metacafe, Facebook ja tykkää) ... KAUDEN.

Eilen kun näin sisäisen tiedonkulun sivut, jossa otettiin käyttäjää syntyi tämä diaesitys .... Kävin OH WOW! Kun tajusin, että ei ollut hiukan FLASH käytetty. Se oli todella rikas käyttöliittymä. Kaikkien UI kehittäjien on pyrkiä luomaan tai ainakin olla osa tiimiä, joka on tehnyt tätä käyttöliittymä .... Aivan loistavaa! Ja inspiroivaa!

Katsele ... http://animoto.com/ ... ja rekisteröityä ja pelata sen kanssa ... vasta sitten voit arvostaa nero.


2008 04 elokuu 2008

Ongelma asentoon () ja XSL ... vai onko?

Minulla oli tämä strage ongelma luotaessa XSL tänään. Etsinyt vastauksia koko verkon, mutta couldnt löytää mitään .... Oikeastaan ​​kai! Olen kuhmu tiedä mitä minun ongelmani oli, niin mitä etsin?

Anyway! Vain jos sinulla on tämä aivan sama ongelma myös ja jotenkin voimalla FORCE olet onnistunut laskeutumaan tällä sivulla ... te kiittää minua tonnia ... Ja jos olet vahingossa päätynyt tälle sivulle jostain kumman kohtalosta ja satut olemaan XSL kehittäjä, eivät tee merkille NYT, tulevaisuuden syy, jos jonain päivänä kohtaat tämän ongelman, niin FORCE ei ehkä ole teidän kanssanne.

Ongelma lausunto:
Minulla on XML, jossa on kaksi solmua useita kohteita, ja erät näiden kahden solmut on yksi yhteen vastaavuus. Alla olevassa esimerkissä, kunkin kohteen solmussa <array name="PLAYURL" /> liittyy (vastaava asema) ja kohteen solmussa <array name="SITENAME" />

<?xml version="1.0" encoding="utf-8"?>
<myplaylists>
<playlist>
<title>Best of Rest </title>
<array name="SITENAME">
<str>www.musicindiaonline.com</str>
<str>www.dhingana.com</str>
<str>www.raaga.com</str>
<str>www.smashits.com</str>
<str>www.desimusic.com</str>
<str>www.musicplug.in</str>
</array>
<array name="PLAYURL">
<str>http://www.musicindiaonline.com/123/</str>
<str>http://www.dhingana.com/play/123</str>
<str>http://www.raaga.com/123</str>
<str>http://ww.smashits.com/123</str>
<str>http://www.desimusic.com/123</str>
<str>http://www.musicplug.in/123</str>
</array>
</playlist>
</myplaylists>

Nyt minulla on silmukka, jossa i takaisinkytkentä <array name="SITENAME">, ja haluan saada veroihin (at vastaava asema) ja <array name="PLAYURL">,

Mitä te normaly yrittää tehdä, on ...

<xsl:for-each select="myplaylists/playlist/array[@name='SITENAME']/str">
play from : <a href="{../../array[@name='PLAY']/str[position()]}"/> <xsl:value-of select="." /></a>
</xsl:for-each>

SORRY! TÄMÄ tapana työskennellä ... Ah!! Surpised ...

Nyt varmaan kokeilla, jotain tällaista ...

<xsl:for-each select="myplaylists/playlist/array[@name='SITENAME']/str">
<xsl:variable name="pos"> <xsl:value-of select="position()"/></xsl:variable>
play from : <a href="{../../array[@name='PLAY']/str[$pos]}"/> <xsl:value-of select="." /></a>
</xsl:for-each>

Ja taas tämä tapa toimia ... Nyt olet naarmuuntumisen pään, yrittää ottaa yhteyttä kaikki kuka luulet tuntee joitakin XSL ja voisi olla mitään apua ... yrität joka toinen vaihtoehto ... ja silti se tapana työskennellä ... No! Että mitä tapahtui minulle sentään ...

DONT epätoivo! Kokeile tätä

<xsl:for-each select="myplaylists/playlist/array[@name='SITENAME']/str">
<xsl:variable name="pos-int" select="position()" />
play from : <a href="{../../array[@name='PLAY']/str[$
<xsl:for-each select="myplaylists/playlist/array[@name='SITENAME']/str">
<xsl:variable name="pos-int" select="position()" />
play from : <a href="{../../array[@name='PLAY']/str[$ pos-int ]}"/> <xsl:value-of select="." /></a>
</xsl:for-each>
]}"/> <xsl:value-of select="." /></a>
</xsl:for-each>

Dont KYSY miksi se toimii. Syy i dont on oikeus syy ... jos teet! Älä pudota kommentti. Se voi olla melko hyödyllinen. Myös! Jos sinulla on paremmat otsikko tähän virkaan, tee pudota minua linja :)


2008 02 elokuu 2008

Asettaminen DOCTYPE on XSL

Viime viikolla luonut progessive HTML / CSS ulkoasua asiakkaalle testanneet IE6, IE7 ja FF 3, tuntui täysin hieno ... ASTI! layout meni alempana manufacting aikana. Se epäonnistui. Page asetteluja meni koko paikka, kun HTML layout muutettiin XSL ja XML soveltaa sitä ... Bummer!

Pystynyt nukkumaan ok viikonloppuna, ennakoiden maanantaiaamuna, kun minun täytyy korjata SH **. Mutta nyt ottaa hieman experince käsittelemään tällaiset tilanteet (Browser koukero, tarkoitan), tiesin, että se täytyi tehdä mitään muuta kuin DOCTYPE .... ja se oli ...

Ongelma:
Haluat hallita DOCTYPE, koska transformaatiotanne sisältää oletuksena DOCTYPE selkeästi, ja te asettelu tulee ulos heittää.

Ratkaisu:
XSLT tiedot antaa lähdön menetelmät asettaa DOCTYPE on valinta. Myös meille käyttöliittymän kehittäjille kiinnostavista aiheista olisi HTML-menetelmiä ja XML-menetelmiä .

No! ennen kuin kyllästyt, tässä on korjaus.

Esim.., Jos sinulla on ollut seuraava DOCTYPE HTML-versiossa: -

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

Sitten XSL sinulla olisi oltava seuraavat: -

<xsl:output method="html" doctype-system="http://www.w3.org/TR/html4/loose.dtd" doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN" indent="yes" />

ja lopuksi! älä tee varma XSLT lähtö tottelee DOCTYPE olet valinnut.


NDK home | Ilmaiseminen IT | ilmaiseminen Palate | ilmaiseminen Penmenship | ilmaiseminen Awe | ilmaista itseäni