2012-02-14 26 views
0

我有一個可重複使用的google-maps小部件,可以插入任何可能想要使用它的頁面。如何在不重複的情況下包含即插即用小部件靜態[CSS/JS]?

部件有:

  • 谷歌地圖的特定js包括。
  • 地圖特定css風格的地圖。

問題:

  • 窗口小部件的代碼被包括作爲server-side包括。
  • 控件特定jscss必須包含在窗口小部件代碼中。
  • 因此,如果窗口小部件在頁面上重複5次,那麼包含jscss的語句會被包含5次。
  • 我不能保持小工具的具體包含在<head>標記中,因爲如果小部件沒有在頁面上使用,那麼未使用的jscss被下載到客戶端上。

所以,我應該如何保持jscss所以他們只在使用小部件被包括在內,沒有多包括完成的情況下,小部件是重複的。

我的技術:

  • Django-Python [如果關鍵]
  • 我也面臨同樣的問題上php

注:

  • 我的理解是,包括頁面上的相同jscss多次不強制客戶端多次下載它們,但我想避免的多重包含。

我應該如何解決這個問題?

請隨時要求更多的信息,如果我錯過了什麼。 :)

回答

0

根據你的使用情況幾個選項:

  1. 使用對於需要小部件的所有頁面的獨立基礎模板;在該基地添加所需的js/css文件。對於需要該小部件的所有視圖,從修改後的基礎繼承。

  2. 使用JavaScript實現的條件包括。

+0

我知道變通,請建議,而又沒有新的基地/有條件包括等 這必須是一個標準的問題。 – 2012-02-14 07:00:07

+0

爲小部件與頁面的每種可能組合都有一個新的基本模板似乎並不實際。 – 2012-02-16 04:28:15

+0

似乎沒有其他解決方案:( – 2012-02-26 05:01:14

相關問題