我想要做的事情的概念非常簡單。我有一個從XML文檔通過XSLT加載的公司標識網格,每個標識都有自己獨特的公司配置文件鏈接。使用懸停的XML內容更新DIV
我在頁面上有一個單獨的div,本質上是一個「預覽」框。我想要做的是這樣的:
我翻轉了一個標誌,它將公司名稱和一個簡短描述加載到預覽div中。此內容通過XML加載。
我一直在搞亂Jquery的load()函數,改變目標文件加載懸停—,它幾乎得到我想要的,但它將整個目標XML文檔加載到div中。
我該如何將這個目標XML數據分離成單獨的div? (我有不同的風格) 我假設我會以某種方式使用Ajax。我想將<name>
節點加載到name_div中,並將<desc>
節點加載到description_div中,並在懸停時更新它們。先謝謝您的幫助!
這裏是我的工作代碼的一些例子:
portfolio.xml文件(該文件是我的主要頁面,顯示網格和預覽格,例如使用3家公司):
<portfolio>
<company>
<name>ABC Company</name>
<sdesc>Consumer products</sdesc>
<logo-thumb>abcco.jpg</logo-thumb>
<link>abcco.xml</link>
</company>
<company>
<name>DEF Company</name>
<sdesc>Communications firm</sdesc>
<logo-thumb>defco.jpg</logo-thumb>
<link>defco.xml</link>
</company>
<company>
<name>GHI Corporation</name>
<sdesc>Electronic products</sdesc>
<logo-thumb>ghico.jpg</logo-thumb>
<link>ghico.xml</link>
</company>
</portfolio>
以下XSLT在頁面上顯示的代碼:
<xsl:for-each select="portfolio/company">
<xsl:sort select="name" />
<div class="invest-port-thumb">
<a>
<xsl:attribute name="href">
<xsl:value-of select="link" />
</xsl:attribute>
<img>
<xsl:attribute name="src">
<xsl:value-of select="logo-thumb" />
</xsl:attribute>
</img>
</a>
</div>
</xsl:for-each>
這是「預覽格」的HTML結構:
<div id="preview">
<div id="preview-name"> [Name to display here] </div>
<div id="preview-desc"> [Description to display here] </div>
</div>
所有3個公司徽標都加載到頁面中,每個徽標都顯示從中加載的鏈接圖像。期望的效果是在懸停時顯示「preview-name」div中的內容以及「preview-desc」div中的內容。
讓我試着做一個更具體的。下面是一些例子:
portfolio.xml文件(該文件是我的主要頁面,顯示網格和預覽格,例如使用3家公司):
<portfolio>
<company>
<name>ABC Company</name>
<sdesc>Consumer products</sdesc>
<logo-thumb>abcco.jpg</logo-thumb>
<link>abcco.xml</link>
</company>
<company>
<name>DEF Company</name>
<sdesc>Communications firm</sdesc>
<logo-thumb>defco.jpg</logo-thumb>
<link>defco.xml</link>
</company>
<company>
<name>GHI Corporation</name>
<sdesc>Electronic products</sdesc>
<logo-thumb>ghico.jpg</logo-thumb>
<link>ghico.xml</link>
</company>
</portfolio>
下面的XSLT顯示該代碼在頁面上:
<xsl:for-each select="portfolio/company">
<xsl:sort select="name" />
<div class="invest-port-thumb">
<a>
<xsl:attribute name="href">
<xsl:value-of select="link" />
</xsl:attribute>
<img>
<xsl:attribute name="src">
<xsl:value-of select="logo-thumb" />
</xsl:attribute>
</img>
</a>
</div>
</xsl:for-each>
這是 「預覽格」 的HTML結構:
<div id="preview">
<div id="preview-name"> [Name to display here] </div>
<div id="preview-desc"> [Description to display here] </div>
</div>
所有3個公司徽標都加載到頁面中,每個徽標都顯示從<logo-thumb>
加載的鏈接圖像。期望的效果是在懸停時,在「preview-name」div中顯示<name>
的內容,並在「preview-desc」div中顯示<sdesc>
的內容。
我感興趣的(學術)中發現如果/ XSL如何工作了通過XMLHttpRequest – Pointy 2010-06-14 15:28:33
加載XML時,您有沒有考慮加載整個文檔通過Ajax進入jquery,解析XML,然後將必要的信息添加到每個元素?將詳細說明,如果你想.. – Jeriko 2010-06-14 15:31:23
這是另一種選擇。我只是覺得這會很難做到。目前,我的頁面是按照我的想法設置的。我擁有XML文件中的所有公司,每個公司都有他們的名稱和說明。我只是不確定如何將其分離出來,並根據我所展示的圖片顯示內容。 – 2010-06-14 15:44:29