2016-01-05 36 views
-2

我在詢問您的專業知識。我已經相當先進的發展,我寧願仔細想想在我的代碼中改變了很多東西。「單頁應用程序」DOM操作代替AngularJS

我正在研究一個網站,該網站將在個人電腦和智能手機上進行諮詢。 到目前爲止,我一直在使用Bootstrap使它響應並且沒關係。現在,我不得不處理離線模式。我找到了一個插件(Offline.js),用於檢查連接並保持脫機的任何AJAX請求在連接返回時再次發送。這很好,但只有當用戶停留在發送請求的頁面上時,它才能保持它...這是一個問題。

我想我必須改變網站結構,將其變成「單頁面應用程序」。但是,儘管我的研究,我仍然不確定要使用什麼。

AngularJS似乎很好,但我擔心網站的維護,因爲在我的團隊中,沒有人使用AngularJS(並且他們不是Web開發人員,因此學習使用新框架的成本是時間)。而且,這將是一個巨大的倒退,因爲這意味着我必須改變整個網站。

所以我想使用普通的JavaScript(或JQuery)操縱DOM來顯示或不DIV元素。例如,如果我有一個汽車列表,當我點擊一個,它隱藏包含列表的DIV,並顯示包含已被點擊的汽車細節的DIV(這些細節將從AJAX請求中加載onclick事件)。

所以,只會有一個頁面。但我不確定這種解決方案的可行性,特別是對於性能而言,恐怕它可能很慢。以前面的例子,當我回到汽車列表時,DIV元素中包含的細節是否仍然「存在」? (因爲對於我正在開發的網站,它將包含一張每5秒顯示車輛位置的地圖,所以它仍然可以運行很重要......)。如果它仍然存在,是否將DIV元素的HTML設置爲空(innerHTML =「」)可以解決問題?

謝謝你的專業知識。

Post scriptum:爲了防萬一有人問,我不能發佈網站代碼的任何部分,因爲它是針對我正在工作的項目,所以顯然它是保密的。對不起,謝謝你的理解。

回答

-2

我也經歷了同樣的問題,當我不得不創建一個頁面的HTML應用程序。我在JS和jquery方面非常出色,但是一些像ng-model這樣的特性吸引我用angular JS開發它。但我錯了,因爲從一個新的框架開始,我沒有太多的操作角JS的東西。我重新開始了JS和jQuery的全部工作。