前 言
關於SharePoint Online中的導航,基本是由Html + Css + JavaScript組成效果以及樣式,然后在后台列表或者SharePoint Online元數據導航當做數據源進行展示,通常數據源為列表的我們稱之為自定義導航。
下面,讓我們分別介紹SharePoint Online的元數據導航和自定義導航。
一、SharePoint Online默認導航
如果想使用SharePoint Online默認導航,可以用F12的方式,看看控件在母版頁中的位置,如下圖:
在Designer里找到導航控件,然后移動到母版頁中你導航的位置,即可;
<SharePoint:AspMenu id="V4QuickLaunchMenu" runat="server" EnableViewState="false" DataSourceId="QuickLaunchSiteMap" UseSimpleRendering="true" Orientation="Horizontal" StaticDisplayLevels="1" DynamicHorizontalOffset="0" AdjustForShowStartingNode="true" MaximumDynamicDisplayLevels="2" StaticPopoutImageUrl="/_layouts/15/images/menudark.gif?rev=38" StaticPopoutImageTextFormatString="" SkipLinkText="" StaticSubMenuIndent="0" />
我個人習慣,在移動了導航之后,在原來位置上加一個標記,方便以后修改,如下圖:
這樣,我們可以看到導航已經變為我們修改后的SharePoint導航了,如下圖:
默認導航的修改方式比較簡單,就是在導航上直接編輯、添加即可,同時我們還可以點擊那個小眼睛一樣的圖標,設置是否可見,如下圖:
SharePoint Online默認導航支持三級導航,添加一個連接以后,將其拖動到導航上,即可彈出下一級位置,拖進去即可;
由於我們的導航,可能和SharePoint Online默認樣式有所區別,我們可以使用JavaScript和Css去強制樣式修改,具體可以參考之前修改導航的博客;
參考:SharePoint 2013 托管導航及相關配置 <二>
http://www.cnblogs.com/jianyus/p/3520623.html
二、SharePoint Online自定義導航
我們這里采用的就是SharePoint Online的默認導航,因為樣式非常方便修改,編輯起來也很友好;但是,可能會遇到非常漂亮的導航,如果用JavaScript和Css的方式很難修改的情況,我們還是需要自定義導航的。
在這里,我們也簡單介紹一下,自定義導航的情況。
其實在SharePoint Online中自定義導航也非常容易,可以將導航的內容存儲到自定義列表,然后用JavaScript API讀取,在前台進行展示。
在站點內容中,添加應用程序,如下圖:
選擇自定義列表類型,如下圖:
看一下導航設置,自定義導航比較靈活,可能有是否新選項卡打開等設置,但是默認的導航,是沒有這樣設置的,我們推薦列表名和字段名,首先用英文命名,然后修改為中文顯示,這樣內部字段名不會是中文編碼,而是一開始的英文名字,如下圖:
修改為中文顯示名后,我們創建一條導航數據,如下圖:
當然,在編輯列表的時候,我們還可以使用快速編輯的功能,方便我們編輯和維護自定義導航,如下圖:
然后編寫讀取數據的JavaScript腳本,如下圖:
在母版頁中添加Script.js的引用,然后在母版頁里添加JavaScript方法的調用,即可:
然后,我們就可以看到首頁上,自定義導航的效果了,如下圖:
特別要說,細心的朋友可能看到我有一句Caml語句沒有填寫完整:
Query.set_viewXml("<View><Query></Query></View>");
是因為手頭沒有生成工具,不方便,所以未填寫;但是我給出了格式,只需要在Query里面填寫一句Hidden等於False,並且按照位置排序,即可;
而且,后面為了能夠給導航排序,我還添加了位置(Position)字段,特此說明;
總 結
其實,SharePoint Online中導航的添加和Server版本非常類似,要么使用自帶導航修改樣式,要么使用自定義導航,數據保存列表或者以Xml形式保存在文檔庫,然后在前台通過JavaScript方式或者沙河解決方案讀取導航進行展示。
好了,SharePoint Online的自定義導航,我們就介紹到這里,下一篇,我們將介紹入戶為門戶網站創建欄目。