2009-08-11 57 views
1

我想構建一個網站,詢問用戶是否爲女性,然後使用該信息更改頁面上的所有代詞以符合用戶選擇。所以如果你輸入男性,那麼這個頁面會改變所有的個人引用(他,他,他等)。我的選擇是:1)構建2個站點,並讓用戶輸入指導用戶到正確的站點或2)構建一個站點,根據用戶輸入動態更改動態更改頁面與2個靜態頁面之間的差異

從性能成本和帶寬成本的角度來看,更好的選擇?

+0

這是一個網頁,還是整個網站?因爲你提到了兩者。 – 2009-08-11 16:27:29

+0

這將用於整個網站的多個頁面。 – 2009-08-11 16:29:01

+0

在用戶選擇之前,您打算如何使用默認設置?一個模棱兩可的選擇,或選擇一個現有的性別? – 2009-08-11 16:39:35

回答

2

如果你只是看性能和帶寬,最好有兩個靜態頁面:代理和瀏覽器可以緩存頁面,這對兩者都有幫助。這仍然是更好的方法嗎?那麼,取決於你的維護計劃是什麼樣子。你打算經常更新頁面嗎?在這種情況下,您需要確保始終將更新應用於這兩個頁面。

+0

我不會改變這些頁面的內容,但是我會添加新的頁面,這意味着將來要編寫添加的每個頁面的兩個版本。 – 2009-08-11 16:30:37

0

選項「2」,使用輕量級JavaScript,並且對服務器執行的調用較少,但使用jQuery(「#id」)。load(「page.php」)只需要更改一部分HTML

0

我是KISS原則的信徒。擁有兩個JSP頁面沒有任何問題。它清晰易讀。然而,在你的情況下,一個簡單的jQuery函數,即使他們進入他/她,也不會很難或很難維護。性能會很好,帶寬會更好(因爲您正在使用腳本更改文本客戶端)。

0

此網站是否計劃增加功能?例如,您是否需要在某一天要求提供語言選擇並讓用戶的內容以他們的語言呈現?對於一個簡單的雙語網站,您將需要4頁(2種語言x 2性別)。

如果您需要根據區域選擇顯示某些數據,則必須再次將頁面數乘以區域數。

對於不變的頁面,靜態效率非常高,但如果您需要爲將來增長空間和增加更多功能,動態生成的基於用戶選擇標準的內容被拉動的頁面更容易維護。

0

我完全不會使用JavaScript。我會請求用戶的性別,並處理服務器端的代詞決定。通過在您的內容中使用代詞模板,您可以在提供頁面之前進行簡單的搜索和替換,從而簡化維護工作。

0

你可以用CSS做 - 例如,在頁面的HTML有:

[跨度類= 「男」]他[/ SPAN] [跨度類= 「女」]她的[/ SPAN]

...然後根據用戶選擇切換CSS樣式表,在cookie中記錄選擇。

一個樣式表將具有:

span.male {顯示:無} span.female {顯示:內聯}

並且另一個是:

span.male {顯示:內聯} span.female {display:none}

你明白了......