SharePoint 사이트의 타일 UI(w/사용자 지정 목록)

13298 단어 SharePoint

하고 싶은 일



사이트에 타일을 붙이고 그것을 연결하고 싶습니다.
(주목 링크 파트가 아님)

했던 일


  • 사이트에 사용자 지정 목록을 제공하고 거기에 타일 색상과 이미지 URL을 나열
  • 페이지 측에서는 Script editor에서 SPServices를 사용하여 목록 데이터를 가져옵니다.
  • Contents editor에서 타일의 모양을 조정 (호버하면 1.1 배로 확대)

  • 이런 느낌





    호버하면 괜찮아

    목록 측. 필요없는 필드도 있지만, 그것은 CAM에서 취하지 않으면 좋다.

    코드



    ScriptEditor
    <div>title</div>
    <script src="jquery.minのpath" type="text/javascript"></script>
    <script src="jquery.SPServicesのパス" type="text/javascript"></script>
    <script type="text/javascript">
    $(document).ready(function() {
        $().SPServices({
            operation: "GetListItems",
            async: true,
            listName: "XXXXXX",
            CAMLViewFields: "<ViewFields><FieldRef Name='Title' /><FieldRef Name='URL' /><FieldRef Name='Open In New Window' /><FieldRef Name='Order' /><FieldRef Name='imageURL' /><FieldRef Name='color' /></ViewFields>",
            CAMLQuery: "<Query><OrderBy><FieldRef Name='Order' Ascending='true' /></OrderBy></Query>",
            completefunc: function (xData, Status) {
                $(xData.responseXML).SPFilterNode("z:row").each(function() {
                    var title = ($(this).attr("ows_Title"));
                    var order =parseInt(($(this).attr("ows_Order")));
                    var imageURL = ($(this).attr("ows_imageURL"));
                    var bgcolor = ($(this).attr("ows_color"));
                    var href = ($(this).attr("ows_URL")).split(",")[0];
                    var liHtml = "<div class='Tile' id='Div"+order+"' style='background-color: "+bgcolor+ "'>"+"<a href='"+ href +"'>" + "<img width='150' alt='' src='"+imageURL+"'/> </a></div>";
                    $("#Content").append(liHtml);
                });
            }
        });
    });
    </script>
    <div id="Content"></div>
    

    SPServices에서 List item 가져오고, 그 뒤에 div에 자식 요소를 생성하고 있을 뿐.

    ContentsEditor
    <style type="text/css"> 
    div.Content{
     width: 100%;
    }
    
    div.Tile{
     position: relative;
     height: 150px;
     width: 150px;
     background-color: #38A3DB;
     margin: 10px;
     float: left;
    }
    
    div.Tile a{
     position: relative;
     height: 150px;
     width: 150px;
     float: left;
    }
    
    div.Tile img{
     position: relative;
     height: 150px;
     width: 150px;
     float: left;
    }
    
    div.Tile:hover{
     -webkit-transform: scale(1.1, 1.1);
     -ms-transform: scale(1.1, 1.1); 
     background-image: url("/SiteAssets/white_vpvot.png");
     background-repeat: no-repeat;
     background-position: right top;
     opacity: 0.75;
    }
    </style>
    

    이것 또 좀 더 깨끗하게 할 수 있을 것 같지만 우선은 이런 느낌.

    Reference


  • https://david9142.wordpress.com/2012/01/18/html%E3%81%A7%E3%83%A1%E3%83%88%E3%83%ADui%E3%81%A3%E3% 81%BD%E3%81%84%E7%94%BB%E9%9D%A2%E3%82%92%E3%81%A4%E3%81%8F%E3%81%A3%E3%81% A6%E3%81%BF%E3%81%9F/
  • h tps // sp r ゔ ぃ 세 s. 여기서 pㅇx. 코 m/우우키파게? 치 t ぇ = 게 t ぃ s 치테 ms & Refu ぇ
  • 좋은 웹페이지 즐겨찾기