圖中所示框架是一個B/S最基本的結構,共有4部分組成:上下分別為Header、Footer;左右分別為Menu、Content。Header 和footer 部分用來顯示網站的基本信息,Menu用來劃分管理劃分后臺的業務模塊,content來展示每個業務所對應的處理界面。
因為每個模塊對應一個網頁,而且要保證所有網頁的統一性,所以在剛開始布局的時候,想到將該框架構造一個母版頁,運用該母版頁新建網頁,然后通過菜單中的超級鏈接串起來的。這樣做,看起來是很好的運用了母版頁的功能,實現了固定部分的復用(通常情況下,固定部分頁面設計復雜,變化部分設計簡單),但是還存在很多的不便。最明顯的,頁面間在跳轉時整個頁面會有一閃一閃的效果,因為每次跳轉,整個頁面都需要重新加載一次,如果母版頁的內容很多,加載就會時間長,會影響網站的流暢性。
標簽Target屬性的掌握,使我們解決了這個難題。
先簡單介紹一下該屬性:如果在一個 <a> 標簽內包含一個 target 屬性,瀏覽器將會載入和顯示用這個標簽的 href 屬性命名的、名稱與這個目標吻合的框架或者窗口中的文檔。我們知道Iframe可作為容器,它可以盛放web窗體所以,我們在原先的設計界面的Content部分,添加一個Iframe 控件,將菜單帶有超級鏈接標簽中的target屬性設置為Target=“iframe.name” ,這樣所有的業務頁面就會會自動載入到Iframe中了。
這樣一來,每個頁面在布局時,只要考慮滿足自己的業務就可以了;而且在頁面加載的時候,只加載變化的部分到Iframe中顯示,降低了載入頁面的數據量,節約了加載時間,保證了運行的流暢。同時還有一個意想不到的好處:大家知道頁面傳值中Querystriing 方法有一個缺陷,被傳得值會被顯示在地址欄的URL中,當用這種方法實現時,地址欄里顯示的一直是本框架的頁面地址,這樣一來就將這種弊端給屏蔽掉了
總結:該管理導航頁面,主要依賴Iframe控件+Html標簽的target屬性實現,不但讓頁面的跳轉加載時更簡單,而且有效隱藏了頁面間的傳值信息。