It states when 2 web parts are connected and source web part is set to group by mode, despite of setting it to collapse mode, It comes in expanded mode.
All are expanded
I have written below code to collapse all and only checked item is expanded by default.
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script>
//<input onclick="maintainState()" type="button" value="Maintain State"/>
$( document ).ready(function() {
//console.log( "ready!" );
//applyExpCol();
//setTimeout(maintainState(),10000);
});
function applyExpCol()
{
$("img[src='/_layouts/images/minus.gif']").each(function() {
//console.log($(this).parent().html());
$(this).parent().click();
});
var tracker = true;
var source = $(".ms-vb2 img[alt='Selected']").parent().parent().parent().prev();
$(".ms-vb2 img[alt='Selected']").addClass("inforceFocus");
if(source.length > 0)
{
var currentnode = source;
while(tracker)
{
var previousnode = currentnode.prev();
currentnode = previousnode;
if(previousnode.prop("groupString"))
{
//console.log("Entered " + $(previousnode).find('a').addClass("test","test").html());
$(previousnode).find('a').addClass("targetNotch");
tracker = false;
}
}
tracker = true;
var source = $(".ms-vb2 img[alt='Selected']").parent().parent().parent().prev();
var currentnode = source;
while(tracker)
{
var previousnode = currentnode.prev();
var prepreviousnode = currentnode.prev().prev();
currentnode = previousnode;
if(previousnode.prop("groupString") && prepreviousnode.prop("groupString"))
{
//console.log("Entered " + $(previousnode).find('a').addClass("test","test").html());
$(prepreviousnode).find('a:first').addClass("targetNotch");
tracker = false;
}
}
}
else
{
$("#nostate").html("Nothing is selected!");
}
}
function maintainState()
{
applyExpCol();
$('.targetNotch').click();
if($(".inforceFocus").length > 0)
{
$(".inforceFocus").parent().focus();
}
}
function collapseall()
{
$("img[src='/_layouts/images/minus.gif']").each(function() {
//console.log($(this).parent().html());
$(this).parent().click();
});
}
</script>
<!--<input onclick="maintainState()" type="button" value="Maintain State"/> <span id="nostate">Nothing is selected!</span>-->
<script>_spBodyOnLoadFunctionNames.push("maintainState");</script>
No comments:
Post a Comment