2013-06-23 32 views
1

我想製作一個基於網絡的應用程序,它可以安裝插件/應用程序。我的意思是應用程序是說一個天氣應用程序,它有自己的CSS和JS文件在一個特定的ID如id =「Weather-app」的容器中。如何製作一個基於插件的項目

的問題:(假設一切都在同一臺服務器上)

  • 有重複的ID,類
  • 衝突的腳本和樣式表
  • 如何實際檢查文件夾命名爲‘插件’,找到一個名爲Weather-app的文件,然後將'Weather-app'的內容加載到主應用程序中。

我在谷歌環顧四周,並沒有設法找到任何關於如何去做這件事的信息。希望這裏有人會知道。如果可能,我想使用JavaScript & JQuery。我不知道是否已經有一個來源爲此目的,但如果有一個鏈接將是偉大的!

回答

1

1 - 避免使用泛型的ID,而是始終使用類。

2 - 在您使用某些名稱空間創建的插件生成的HTML前綴類上。即:js-plugin-foobar-nameOfClass

你可以避免讓用戶爲每個插件添加一個「.js」和「.css」文件。你可以用javascript生成CSS類。這樣,你只需要爲每個插件導入一個文件:How to dynamically create CSS class in JavaScript and apply?

看看jQuery的widget工廠,你可以建立你的插件來使用它,這應該會促進你的生活。他們也有一些編碼準則:http://jqueryui.com/widget/

+0

非常感謝!我將不得不閱讀'命名空間'和'jQuery構件工廠'......我仍然在學習JavaScript和編碼的一般方法,所以再次感謝這是一個很大的幫助,你指出了一些我甚至不知道存在:L – ChristopherStrydom

+0

再次嗨!我只需要清除一些事情......關於第2點,我該如何改變應用程序已有的所有類?假設我沒有製作應用程序,那麼這個人已經使用了正常的類。有沒有一種方法來篩選文檔並更改所有3種語言(JS,CSS,HTML)中的所有類?或者這是趨向於爲我的應用程序做一個API?我似乎無法找到這樣做的好方法.. – ChristopherStrydom

+0

我正在尋找這樣的東西https://github.com/oazabir/Droptiles – ChristopherStrydom

相關問題