SharePointで「次の文書へ進む」「前の文書に戻る」ブックマークレット

ノーツ(クライアント)から SharePoint を使うようになって、色々と不満はありますが、その中の一つに「次の文書へ進む」/「前の文書に戻る」機能がないことがあります。

掲示板の文書─ SharePoint 用語だと「リストのアイテム」ですが、ひとつのアイテムを確認した後、次のアイテムを見るには、一旦ビューに戻って、次のアイテムをクリックする必要があります。

この「一度ビューに戻って、クリック」という動作が煩わしいのです。いえ、Webはそういうものだと言えばそれまでなんですけどね。

しかしノーツ(クライアント)時代は、ENTER を押せば次の文書に遷移してくれました。さらに BackSpace で前の文書に遷移できた訳ですよ。実際無くなって見ると、これが如何に便利だったかを痛感します。

そこで、この遷移を行うブックマークレットです。

[code]javascript:((function(){var param=location.search.substring(1).split("&");var ret="";for(var idx=0;idx<param.length;idx++){if(param[idx].split("=")[0]=="ID"){ret+=param[idx].split("=")[0]+"="+(parseInt(param[idx].split("=")[1])+1)+"&";}else{ret+=param[idx]+"&";}}location.href=location.pathname+"?"+ret.substr(0,ret.length&#45;1);})())’>次のアイテム</a>
<a href=’javascript:((function(){var param=location.search.substring(1).split("&");var ret="";for(var idx=0;idx<param.length;idx++){if(param[idx].split("=")[0]=="ID"){ret+=param[idx].split("=")[0]+"="+(parseInt(param[idx].split("=")[1])&#45;1)+"&";}else{ret+=param[idx]+"&";}}location.href=location.pathname+"?"+ret.substr(0,ret.length&#45;1);})())’>前のアイテム</a>
<a href=’javascript:((function(){var url=location.pathname;url=url.substr(0,url.lastIndexOf("/"))+"/DispForm.aspx";location.href=url+"?ID="+prompt("IDを入力してください","");})())
[/code]


リストアイテムを表示している状態で、ブックマークレットをクリックすると、JavaScript がアイテムのIDを増減する仕組みになっています。あくまでID依存なので、ビューでアイテムを絞っているようなケースには対応できませんが「掲示板の新着を流し読みする」ようなケースで非常に便利です。

是非、使ってみてください。でもまあ、実際のところこういう機能って、SharePoint が標準で搭載して欲しいですよねぇ。次バージョンで採用されないかなぁ…。


Author

中村 和彦(シンプレッソ・コンサルティング株式会社 代表)が「ユーザ視点の SharePoint 情報」を発信します。元大手製造業 SharePoint 運用担当。現SharePoint コンサルタント。お仕事のお問い合わせはこちらまでお願いします。当ブログにおける発信内容は個人に帰属し所属組織の公式発信/見解ではありません。
FB : 中村 和彦
blog: Be・Better!
MS MVP SharePoint 2009/10-2011/9
MS MVP Office 365 2012/10-2014/9