2008 13 Ağu 2008

Bir XSL içinde Sınırlandırılmış Dize tokenizing

İhtiyaçlarınız değeri sınırlandırılmış bir dize içeren bir XML bir düğüm değeri bölmek ise, ürüne içine, o zaman doğru yere ulaşmış ... Aşağıdaki örnekte de bakabilirsiniz. XML ve XSL biraz aşina iseniz ... Ben herhangi bir açıklama gerekir sanmıyorum.
Xsl, call-template: substring-before, xsl: Ayrıca, bu örnekte xsl gibi XSL fonksiyonları kullanımını içerir substring-sonra, o senden sonrası buysa.

Dönüştürülmesi için XML (food.xml): -
Görev tag "anahtar kelimeler" in, virgülle ayrılmış dize tokenize olduğunu varsayalım

<?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>

Sonuç HTML çıktı: -

<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>

Söylemeye gerek yok ... sadece seçtiğiniz sınırlayıcı parametre "delimitr" değiştirin


2008 11 Ağustos 2008

Bu Sahte Konumlu WordPress Template indirin

Size ilham ya da her neyse almak için çoğu yapılan HTML sayfası CSS kontrol edin o adamlardan biri (benim gibi), varsa, o zaman biz (zaten benim daha önceki makalede bahsedilen Faux Konumlandırma kullanmış fark etmiş olabilirsiniz Biz Faux Mutlak Konumlandırma kullanarak: A Brilliant CCS Düzen )

Biz bu şablonu bazı iyi çalışmalar, bu yüzden paylaşmak güzel olurdu .... düşündüm vermedi Bu WordPress Tema (196 kez indirilmiş) indirin


2008 7 Ağu 2008

Animoto: Flash olmadan Really Nice "Zengin Kullanıcı Arayüzü"!

Eğer animoto.com gördünüz mü? Eh! Bu AD değil, ben çok beğendim! ve bu gerçekten ASS UI Öp edilir

Birkaç hafta önce bu sitede rastladım. Ilk sayfasında gördüm, çok rahatsız kuvvetiyle. Benim için, kullanıcılar, resim yüklemek bazı parça seçmek ve güzel bir resim slayt gösterisi haline dönüştürmek için izin, bazı zengin Flash içerikleri ile sadece başka bir site oldu. FLV indirin, ve seçtiğiniz herhangi bir site (YouTube, Metacafe, Facebook ve seviyor) ... DÖNEM üzerine koydu.

Dün ben bu slayt gösterisi oluşturma yoluyla kullanıcının aldı iç akışı sayfaları görünce .... Ben WOW OH gitti! Ben FLASH kullanılan bit yok olduğunu görünce. Gerçekten Zengin Kullanıcı Arayüzü oldu. Tüm UI geliştiriciler oluşturmak için talip veya en azından bu arayüz yaptı ekibin bir parçası olmalıdır .... Kesinlikle parlak! Ve Inspiring!

BİR GÖZ ... VAR http://animoto.com/ ... ve kayıt ve onunla oynamak ... sadece o zaman dahi takdir edebilirsiniz.


2008 4 Ağu 2008

XSL pozisyon () ile bir sorun ... ya da öyle değil mi?

Bugün bir XSL oluştururken bu Veri Saklama sorunu vardı. Net boyunca cevaplar aradı, ancak herhangi bir bulamadım .... Aslında sanırım! Ben kuvvetiyle benim sorunum ne olduğunu bilmek, yani ne için görünüyorum?

Her neyse! Just in case sen beni ton teşekkür edeceğim ... çok ve her nasılsa bu sayfada karaya yönetilen FORCE gücüyle bu çok aynı sorun var ... Ve kazara bazı garip kaderi için bu sayfayı indi ve eğer kullanıcı olarak gerçekleşmesi bir gün, bu sorunu yaşarsanız bir XSL geliştirici, GELECEK neden İÇİN, ŞİMDİ BU BİR NOT MAKE DO, daha sonra FORCE sizinle olmayabilir.

Problem ifadesi:
Içinde birden çok öğe ile iki düğüm vardır nerede, bu XML var ve bu iki düğüm arasında öğeleri birebir uyum var. Aşağıdaki örnekte, düğüm <array her öğe name="PLAYURL" /> düğüm <array bir öğeye (ilgili pozisyon) anlatıyor 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>

I <array name="SITENAME"> döngü ve ben <array name="PLAYURL"> ilgili kaleme (ilgili konumunda) almak istediğiniz Şimdi, ben, bir döngü var

Ne normalde bunu denemek istiyorsunuz olduğu ...

<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>

ÜZGÜNÜM! BU alışkanlık ... Ah! Surpised ...

Şimdi muhtemelen, denemek için böyle bir şey isteyeyim ...

<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>

Ve Yine bu alışkanlık ... Şimdi, başınızı tırmalamak bazı XSL bilir düşünüyorum herkesin temas kurmaya çalışan ve herhangi bir yardım olabilir ... Her diğer seçeneği deneyin ... ve hala bu alışkanlık ... Eh! Bu bana atleast ne oldu ...

DONT DESPAIR! BU YTL

<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>

ÇALIŞIYOR NEDEN ASK ME DONT. I bir hak sebebi zorunda değilsin ... Yaptığın Çünkü eğer! Bir yorum bırakın lütfen. Oldukça faydalı olabilir. Ayrıca! Bu mesaj için daha iyi BAŞLIK varsa, bana yazmaktan yapmak :)


2008 2 Ağu 2008

XSL DOCTYPE ayarlanması

Geçen hafta, bir istemci için bir progessive HTML / CSS düzeni oluşturulur IE6, IE7 ve FF 3 test edilmesi, mükemmel ince görünüyordu ... KADAR! düzeni manufacting döngüsü daha aşağı gitti. Başarısız oldu. Sayfa düzeni unsurları sadece tüm HTML düzeni XSL ve XML kendisine uygulanan ... Bummer! Dönüştürülmüştür yerde gitti!

Bu SH ** düzeltmek zorunda kalmadan, Pazartesi sabahı beklentisiyle, hafta sonu tamam uyuyamadı. Ama şimdi bu tür durumlarda (Tarayıcı olağandışı, demek) ile ilgili küçük bir deneyime sahip, bunu başka bir şey yapmak ama DOCTYPE gerektiğini biliyordu .... ve Bu WAS ...

Sorun:
Lütfen dönüşümü açıkça varsayılan bir DOCTYPE içerecektir beri, DOCTYPE üzerinde kontrol istiyorsanız ve düzeni atmak için çıkacak.

Çözüm:
XSLT gözlük seçimi bir DOCTYPE ayarlamak için çıkış yöntemleri sağlar. Ayrıca, bize UI geliştiriciler için, ilgi konular olacaktır HTML çıkış yöntemleri ve XML çıkış yöntemleri .

Eh! Eğer sıkılmış girmeden önce, burada bir düzeltmedir.

Örneğin, HTML sürümünde aşağıdaki DOCTYPE olsaydı:. -

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

Sonra XSL içinde şu olması gerekir: -

<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" />

ve Sonunda! XSLT çıktı seçtiğiniz DOCTYPE itaat emin olabilirim.


NDK ev | BT İfade | İfade Damak | İfade Penmenship | İfade Awe | İfade Myself