• SharePoint 2010: 取得浏览最多的网站


    环境:SharePoint2010 Rc,父站点下有若干个子站点。

    客户需求:取得网站中各站点浏览次数排名,并且不能写C#代码(其实就算写,我也不知道从哪调出数据来image )。

    题外话:在http://Yoursite/_layouts/WebAnalytics/Report.aspx?t=TopPageForPageReport&l=s这个页面上,可以看到网站哪些页面被浏览次数较多,哪些浏览者浏览次数最多等一系列信息,并且这些数据也可以在2010Log数据库中找到。比如浏览者的信息可以在image

    表中找到。但是就是没有找到网站浏览次数的信息。

    几经与客户协商无果,只好想别的办法来“欺骗”客户一下。

    Web Analytics Web part 中能够搜索浏览最多的内容,并且可以只选择.aspx类型的文件,页面被浏览的最多,那么这个页面所在的站点也就被浏览的最多的(这逻辑可不保证正确!)。

    具体做法:在页面放置Web analytics web part,然后设置其属性。当然这个web part放在了一个名叫“topSitesDiv”的div里面。

    image

    这时候页面显示的内容就是一个个的链接了:

    image

    至于如何用javascript取得这些链接,并且只抽取里面的站点名字,这就非常简单了。用的是Jquery和jquery.timers-1.1.2.js 2个JS。

         <script type="text/javascript">
             $(function () {
                 var urlArray = new Array();
                 var innerURL = "";
                 $("#topSitesDiv").everyTime(1000, 'controlled', function () {  //为什么要加入这个呢,是因为在document.ready时,web part的内容还没有加载出来,所以要循环执行此处,当web part内容加载完了之后,再替换掉topSteDiv的内容.
                     var outerHtml = document.getElementById("topSitesDiv").outerHTML.toString();
                     if (outerHtml.indexOf('16.gif') < 0) {
                         $("#topSitesDiv li a").each(function () {
                             urlArray.push($(this).attr("href"));
                         });

                        innerURL += " <ul>";
                         $.each(urlArray, function (n, value) {
                             if (n < 10) {
                                 innerURL += " <li><a href='" + value + "'>" + value + "</a> </li>";
                             }
                         });
                         innerURL += " </ul>";
                         $("#topSitesDiv").html(innerURL);
                         $("#topSitesDiv").stopTime('controlled', null);
                     }
                 });
             });

        </script>

    最终效果如下图:

    image

    哈哈。欺骗了客户一次。期待着Top Sites这个Web Part的正式发布,这样就不用费劲写代码了。

  • 相关阅读:
    257. Binary Tree Paths
    poj2406 kmp
    hust1010 kmp
    hdu1358 kmp的next数组
    hdu3746 kmp求循环节
    hdu1686字符串kmp
    hdu2087kmp
    hdu1711kmp
    poj3067树状数组求逆序数
    poj1159二维树状数组
  • 原文地址:https://www.cnblogs.com/hearticy/p/1691687.html
Copyright © 2020-2023  润新知