More Related Content Similar to Sharepoint 2013 - un slider JSSOR sur bib Images (20) Sharepoint 2013 - un slider JSSOR sur bib Images2. Webpart recherche de contenu
Insérer composant webpart type « recherche de contenu ». Modifier les propriétés de la
webpart et cliquer sur « changer la requête »
Pointer sur l’url de votre bibliothèque d’images
3. Voici le résultat en utilisant le contrôle « liste », l’ élément «grande image », et en modifiant le
mappage de propriétés comme suit
Nous allons créer un contrôle et élément d’affichage pour avoir un slider
4. Vue d’ensemble
Master Page
Master Page
Mise en page
Mise en page 1
Contrôle de champ
Contrôle de
champ
webpart
Webpart Recherche de
contenu
Modèle d’affichage
contrôle
Modèle
d’élément
Modèle
d’élément
Mise en page 2
Contrôlede
champ
Webpart Recherche de contenu
Modèle de controle
Modèle d’élément
Modèle d’élément
modèle de contrôle
+
modèle d‘élément
= Modèle d’affichage
6. L’objectif est d’avoir un affichage type slider, j’ai choisi d’utiliser le script javascript disponible
gratuitement sur http://www.jssor.com/.
Nous allons dans un premier temps, installer un modèle d’affichage que j’ai préparé pour vous.
7. Sources du modèle d’affichage
<html xmlns:mso="urn:schemas-microsoft-com:office:office" xmlns:msdt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882">
<head>
<title>Controle Slider Shareproject</title>
<!--[if gte mso 9]><xml>
<mso:CustomDocumentProperties>
<mso:CrawlerXSLFile msdt:dt="string"></mso:CrawlerXSLFile>
<mso:TemplateHidden msdt:dt="string">0</mso:TemplateHidden>
<mso:HtmlDesignPreviewUrl msdt:dt="string"></mso:HtmlDesignPreviewUrl>
<mso:ContentTypeId msdt:dt="string">0x0101002039C03B61C64EC4A04F5361F385106601005767008600A3684B8DE8EE696671AA44</mso:ContentTypeId>
<mso:MasterPageDescription msdt:dt="string"></mso:MasterPageDescription>
<mso:TargetControlType msdt:dt="string">;#SearchResults;#SearchHoverPanel;#Content Web Parts;#Refinement;#SearchBox;#Custom;#</mso:TargetControlType>
<mso:HtmlDesignAssociated msdt:dt="string">1</mso:HtmlDesignAssociated>
<mso:HtmlDesignConversionSucceeded msdt:dt="string">True</mso:HtmlDesignConversionSucceeded>
<mso:HtmlDesignStatusAndPreview msdt:dt="string">http://srvcollab/_catalogs/masterpage/slide/list-slider.html, La conversion a réussi.</mso:HtmlDesignStatusAndPreview>
</mso:CustomDocumentProperties>
</xml><![endif]-->
</head>
<body style="font-family:Arial, Verdana;background-color:#fff;">
<script>
$includeScript(this.url, "~sitecollection/Style%20Library/js/jquery-1.9.1.min.js");
$includeScript(this.url, "~sitecollection/Style%20Library/js/jssor.slider.mini.js");
</script>
<div ID="list-slider">
<!--#_
jQuery(document).ready(function ($) {
var _CaptionTransitions = [{$Duration:1200,x:-
0.5,y:0.3,$Zoom:1,$Easing:{$Left:$JssorEasing$.$EaseInOutSine,$Top:$JssorEasing$.$EaseInWave,$Zoom:$JssorEasing$.$EaseInOutQuad},$Opacity:2,$During:{$Left:[0,0.7],$Top:[0.1,0.7]},$Round:{$Top:0.4}}];
_CaptionTransitions["transition_name1"] ={$Duration:1200,x:-
0.5,y:0.3,$Zoom:1,$Easing:{$Left:$JssorEasing$.$EaseInOutSine,$Top:$JssorEasing$.$EaseInWave,$Zoom:$JssorEasing$.$EaseInOutQuad},$Opacity:2,$During:{$Left:[0,0.7],$Top:[0.1,0.7]},$Round:{$Top:0.4}};
_CaptionTransitions["transition_name2"] ={$Duration:1200,y:0.6,$Clip:3,$Easing:$JssorEasing$.$EaseInCubic,$Opacity:2};
var _SlideshowTransitions = [
{$Duration:1800,x:1,y:0.2,$Delay:30,$Cols:10,$Rows:5,$Clip:15,$During:{$Left:[0.3,0.7],$Top:[0.3,0.7]},$Reverse:true,$Formation:$JssorSlideshowFormations$.$FormationStraightStairs,$Easing:{$Left:$JssorEasing$.$EaseInOutSine,$Top:$JssorEasing$.$EaseOutWave,$Clip:$JssorEasing$.$EaseIn
OutQuad},$Assembly:2050,$Outside:true,$Round:{$Top:1.3}}
,
{$Duration:1200,x:0.2,y:-
0.1,$Delay:20,$Cols:8,$Rows:4,$Clip:15,$During:{$Left:[0.3,0.7],$Top:[0.3,0.7]},$SlideOut:true,$Formation:$JssorSlideshowFormations$.$FormationZigZag,$Easing:{$Left:$JssorEasing$.$EaseInWave,$Top:$JssorEasing$.$EaseInWave,$Clip:$JssorEasing$.$EaseOutQuad},$Assembly:260,$Round:{
$Left:1.3,$Top:2.5}}
,
{$Duration:1200,$Zoom:11,$Rotate:1,$Easing:{$Zoom:$JssorEasing$.$EaseInCubic,$Opacity:$JssorEasing$.$EaseOutQuad,$Rotate:$JssorEasing$.$EaseInCubic},$Opacity:2,$Round:{$Rotate:0.7}}
,
{$Duration:1800,x:1,y:0.2,$Delay:30,$Cols:10,$Rows:5,$Clip:15,$During:{$Right:[0.3,0.7],$Top:[0.3,0.7]},$SlideOut:true,$Reverse:true,$Formation:$JssorSlideshowFormations$.$FormationSwirl,$Easing:{$Right:$JssorEasing$.$EaseInOutSine,$Top:$JssorEasing$.$EaseOutWave,$Clip:$JssorEasing
$.$EaseInOutQuad},$Assembly:2050,$Outside:true,$Round:{$Top:1.3}}
];
var options = {
$SlideshowOptions: {
$Class: $JssorSlideshowRunner$,
$Transitions: _SlideshowTransitions,
$TransitionsOrder: 1,
$ShowLink: true
},
$CaptionSliderOptions: {
$Class: $JssorCaptionSlider$,
$CaptionTransitions: _CaptionTransitions,
$PlayInMode: 3,
$PlayOutMode: 3
},
$AutoPlay: true, //[Optional] Whether to auto play, to enable slideshow, this option must be set to true, default value is false
$AutoPlayInterval: 3000, //[Optional] Interval (in milliseconds) to go for next slide since the previous stopped if the slider is auto playing, default value is 3000
$PauseOnHover: 0, //[Optional] Whether to pause when mouse over if a slider is auto playing, 0 no pause, 1 pause for desktop, 2 pause for touch device, 3
pause for desktop and touch device, 4 freeze for desktop, 8 freeze for touch device, 12 freeze for desktop and touch device, default value is 1
$Loop: 1, //[Optional] Enable loop(circular)of carousel or not, 0: stop, 1: loop, 2 rewind, default value is 1
$ArrowKeyNavigation: true, //[Optional] Allows keyboard (arrow key) navigation or not,
default value is false
$SlideDuration: 500, //[Optional] Specifies default duration (swipe) for slide in milliseconds, default value is 500
$MinDragOffsetToSlide: 20, //[Optional] Minimum drag offset to trigger slide , default value is 20
//$SlideWidth: 600, //[Optional] Width of every slide in pixels, default value is width of 'slides' container
//$SlideHeight: 300, //[Optional] Height of every slide in pixels, default value is height of 'slides' container
$SlideSpacing: 5, //[Optional] Space between
each slide in pixels, default value is 0
$DisplayPieces: 1, //[Optional] Number of pieces to display (the slideshow would be disabled if the value is set to greater than 1), the default value is 1
$ParkingPosition: 0, //[Optional] The offset position to park slide (this options applys only when slideshow disabled), default value is 0.
$UISearchMode: 1, //[Optional] The way (0 parellel, 1 recursive, default value is 1) to search UI components (slides container, loading screen, navigator
container, arrow navigator container, thumbnail navigator container etc).
$PlayOrientation: 1, //[Optional] Orientation to play slide (for auto play, navigation), 1 horizental, 2 vertical, 5 horizental reverse, 6 vertical reverse, default
value is 1
$DragOrientation: 3 //[Optional] Orientation to drag slide, 0 no drag, 1 horizental, 2 vertical, 3 either, default value is 1 (Note that the $DragOrientation
should be the same as $PlayOrientation when $DisplayPieces is greater than 1, or parking position is not 0)
};
var jssor_slider1 = new $JssorSlider$('slider1_container', options);
//responsive code begin
//you can remove responsive code if you don't want the slider scales while window resizes
function ScaleSlider() {
var parentWidth = jssor_slider1.$Elmt.parentNode.clientWidth;
if (parentWidth) {
var sliderWidth = parentWidth;
//keep the slider width no more than 810
sliderWidth = Math.min(sliderWidth, 810);
jssor_slider1.$ScaleWidth(sliderWidth);
}
else
window.setTimeout(ScaleSlider, 30);
}
ScaleSlider();
$(window).bind("load",ScaleSlider);
$(window).bind("resize", ScaleSlider);
$(window).bind("orientationchange", ScaleSlider);
//responsive code end
});
_#-->
<div id="slider1_container" style="position: relative; top: 0px; left: 0px; width: 600px; height: 300px;">
<div u="loading" style="position: absolute; top: 0px; left: 0px;">
<div style="filter: alpha(opacity=70); opacity:0.7; position: absolute; display: block;
background-color: #000000; top: 0px; left: 0px;width: 100%;height:100%;">
</div>
<div style="position: absolute; display: block; background: url(~sitecollection/Style%20Library/img/loading.gif) no-repeat center center;
top: 0px; left: 0px;width: 100%;height:100%;">
</div>
</div>
<!-- Slides Container-->
<div u="slides" style="cursor: move; position: absolute; overflow: hidden; left: 0px; top: 0px; width: 600px; height: 300px;">
<!--#_
ctx.ListDataJSONGroupsKey = "ResultTables";
if (!$isNull(ctx.ClientControl) && !$isNull(ctx.ClientControl.shouldRenderControl) && !ctx.ClientControl.shouldRenderControl()){return "";}
ctx.ListDataJSONGroupsKey = "ResultTables";
ctx.ListDataJSONItemsKey = "ResultRows";
ctx["CurrentItems"] = ctx.ListData.ResultTables[0].ResultRows;
var siteURL = SP.PageContextInfo.get_siteServerRelativeUrl();
_#-->
_#= ctx.RenderItems(ctx) =#_
</div>
</div>
</div>
</body>
</html>
<html xmlns:mso="urn:schemas-microsoft-com:office:office" xmlns:msdt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882">
<head>
<title>Elements Slider Shareproject</title>
<!--[if gte mso 9]><xml>
<mso:CustomDocumentProperties>
<mso:TemplateHidden msdt:dt="string">0</mso:TemplateHidden>
<mso:MasterPageDescription msdt:dt="string">Displays a result tailored for a picture.</mso:MasterPageDescription>
<mso:ContentTypeId msdt:dt="string">0x0101002039C03B61C64EC4A04F5361F385106603</mso:ContentTypeId>
<mso:TargetControlType msdt:dt="string">;#SearchResults;#SearchHoverPanel;#Content Web Parts;#Refinement;#SearchBox;#Custom;#</mso:TargetControlType>
<mso:HtmlDesignAssociated msdt:dt="string">1</mso:HtmlDesignAssociated>
<mso:ManagedPropertyMapping
msdt:dt="string">'Title':'Title','Path':'Path','Description':'Description','EditorOWSUSER':'EditorOWSUSER','LastModifiedTime':'LastModifiedTime','CollapsingStatus':'CollapsingStatus','DocId':'DocId','HitHighlightedSum
mary':'HitHighlightedSummary','HitHighlightedProperties':'HitHighlightedProperties','FileExtension':'FileExtension','ViewsLifeTime':'ViewsLifeTime','ParentLink':'ParentLink','FileType':'FileType','IsContainer':'IsContainer'
,'SecondaryFileExtension':'SecondaryFileExtension','DisplayAuthor':'DisplayAuthor','PictureHeight':'PictureHeight','PictureWidth':'PictureWidth','ImageDateCreated':'ImageDateCreated','PictureThumbnailURL':'PictureT
humbnailURL','PictureURL':'PictureURL'</mso:ManagedPropertyMapping>
<mso:HtmlDesignConversionSucceeded msdt:dt="string">True</mso:HtmlDesignConversionSucceeded>
<mso:HtmlDesignStatusAndPreview msdt:dt="string">http://srvcollab/_catalogs/masterpage/slide/element-slider.html, La conversion a réussi.</mso:HtmlDesignStatusAndPreview>
<mso:CrawlerXSLFile msdt:dt="string"></mso:CrawlerXSLFile>
<mso:HtmlDesignPreviewUrl msdt:dt="string"></mso:HtmlDesignPreviewUrl>
</mso:CustomDocumentProperties>
</xml><![endif]-->
</head>
<body>
<div id="Item_SlideImage" >
<!--#_
if(!$isNull(ctx.CurrentItem) && !$isNull(ctx.ClientControl)) {
var title = ctx.CurrentItem.Title;
var path = ctx.CurrentItem.Path;
var encodedId = $htmlEncode(ctx.ClientControl.get_nextUniqueId() + "_shareprojectNC");
var siteURL = SP.PageContextInfo.get_siteServerRelativeUrl();
var linkURL = $getItemValue(ctx, "Path");
linkURL.overrideValueRenderer($urlHtmlEncode);
var title = $getItemValue(ctx, "Title");
var description = $getItemValue(ctx, "Description");
var pictureURL = $getItemValue(ctx, "PictureURL");
_#-->
<div id="_#= encodedId =#_" data-displaytemplate="ItemSlideList">
<a href="_#= linkURL =#_" title="_#= $htmlEncode(title) =#_" target="_blank"><img u="image" src="_#= pictureURL =#_" /></a>
<div u="caption" t="transition_name2" t2="transition_name1" style="position: absolute; top: 250px; left: 30px; min-width:100px;
height: 25px; background:orange;">
<p><a href="_#= linkURL =#_" title="_#= $htmlEncode(title) =#_" target="_blank">_#= $htmlEncode(title) =#_ </a></p>
</div>
</div>
<!--#_
}
_#-->
</div>
</body>
</html>
contrôle-slider-list.html
element-slider-list.html
Et télécharger les sources de www.jssor.com
8. Déposer dans le répertoire « js » de votre bibliothèque de
style les fichiers:
• Jquery-1-9-1.js, ou utiliser jquery de v1 à v2
• Jssor.js
• Jssor.slider.mini.js
Via Webdav ou sharepoint, Créer un répertoire à l’adresse
http://monserveur/_catalogs/masterpage/ , dans la galerie des
master page
Déposer les fichiers contrôle-slider-list.html et element-slider-
list.html
9. contrôle
Aller dans la galerie des master page, modifier les propriétés de
control-list-image.html
Permet de générer un fichier .JS complet qu’utilise SP
Content Web Parts suffit…il s’agit de la liste des contrôles
De recherche sur lesquels ce modèle pourra être appliqué
10. Elément
Aller dans la galerie des master page, modifier les propriétés de
Element-list-image.html
Archiver puis Publier les pages html : le modèle est
disponible dans les paramètres de la webpart.
On remarque les .js générés
11. Application du modèle d’affichage
Ouvrir la page contenant la webpart de recherche de contenu, modifier, et paramètres de la webpart.
Dans les propriétés de la webpart recherche de contenu, mettre
les options de contrôle et élément comme suit:
13. Et voilà!
Copier les fichiers javascript « slides.min.jquery » et « jquery-1.8.3.min » dans le répertoire « js » de style library
Copier les fichiers CSS « global » dans le répertoire « slider/css/ » de style library.
Copier les fichiers html fourni dans _catalogs/masterpage/Display Templates/Search
Ouvrir le gestionnaire de conception, menu 5 modifier les modèles.
Vous apercevez vos fichiers html convertis avec succès.
Modifiez les propriétés de html pour lui donner les types de contrôles cibles et publiez.
Un autre Modèle d’affichage