I am using the jquery UI Tab control inside of the IGSplitter. I seth HeightStyle to fill on the tab. This results in the contents of the tab having a 0 height. If i remove the tab from the IGSplitter then everything works correctly. Below is a sample
<!DOCTYPE html><html style="height: 100%"><head> <title></title>
<!-- Ignite UI Required Combined CSS Files --> <link href="http://cdn-na.infragistics.com/igniteui/2015.2/latest/css/themes/infragistics/infragistics.theme.css" rel="stylesheet" /> <link href="http://cdn-na.infragistics.com/igniteui/2015.2/latest/css/structure/infragistics.css" rel="stylesheet" />
<script src="http://modernizr.com/downloads/modernizr-latest.js"></script> <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.min.js"></script>
<!-- Ignite UI Required Combined JavaScript Files --> <script src="http://cdn-na.infragistics.com/igniteui/2015.2/latest/js/infragistics.core.js"></script> <script src="http://cdn-na.infragistics.com/igniteui/2015.2/latest/js/infragistics.lob.js"></script> <script src="http://cdn-na.infragistics.com/igniteui/2015.2/latest/js/infragistics.dv.js"></script> <style> #map { overflow: hidden; } </style></head><body style="height: 100%"> <div id="splitter" style="height: 500px"> <div id="tab" style="height: 100%"> <ul> <li><a href="#treetab">Product Range Browser</a></li> </ul> <div id="treetab" style="height: 100%"> <ul id="tree"></ul> </div> </div> <div id="detailSplitter"> <div> <div id="map"></div> </div> <div> <table id="grid"></table> </div> </div> </div> <script src="http://www.igniteui.com/data-files/continents-with-countries-and-cities.js" type="text/javascript"></script> <script>
$(function () { $("#splitter").igSplitter({ height: "500px", expanded: function (evt, ui) { $("#grid_headers").css("width", "100%"); $("#grid").css("width", "100%"); }, panels: [ { size: 200, min: 100, max: 250 }, { collapsible: true } ] }); $("#tab").tabs({ heightStyle: "fill" }); $("#detailSplitter").igSplitter({ orientation: "horizontal", panels: [ { size: 500, collapsible: true }, { size: 200, collapsible: true } ] }); $("#tree").igTree({ dataSource: continentsWithCountriesAndCitiesCoordinates, dataSourceType: "json", bindings: { textKey: "Text", valueKey: "Text", childDataProperty: "Countries" }, rendered: onTreeRendered, selectionChanged: onTreeSelectionChanged });
function onTreeRendered(evt, ui) { var unitedStatesNodeElement = ui.owner.nodesByValue("United States"); var unitedStatesNode = ui.owner.nodeFromElement(unitedStatesNodeElement);
initMap(); initCitiesGrid(unitedStatesNode.data.Cities);
ui.owner.expandToNode(unitedStatesNodeElement); ui.owner.select(unitedStatesNodeElement); }
function onTreeSelectionChanged (sender, eventArgs) { var node = eventArgs.selectedNodes[0]; zoomMapTo(node.data.Latitude, node.data.Longitude, 23);
$("#grid").igGrid("dataSourceObject", node.data.Cities); $("#grid").igGrid("dataBind");
$("#detailSplitter").igSplitter("expandAt", 1); } function initMap() { var map = $("#map").igMap({ width: "100%", height: "100%", crosshairVisibility: "visible", overviewPlusDetailPaneVisibility: "visible", overviewPlusDetailPaneBackgroundImageUri: "http://www.igniteui.com/images/samples/splitter/world.png", panModifier: "control", backgroundContent: { type: "openStreet" }, windowResponse: "immediate", windowRect: { left: 0.27, top: 0.20, height: 0.45, width: 0.45 } });
return map; }
function initCitiesGrid(dataSource) { var grid = $("#grid").igGrid({ width: "100%", height: "99%", dataSource: dataSource, defaultColumnWidth: "25%", features: [{ name: "Selection", mode: "row", rowSelectionChanged: function (ui, args) { var selectedCity = $("#grid").data("igGrid").dataSource.dataView()[args.row.index]; zoomMapTo(selectedCity.Latitude, selectedCity.Longitude, 0.5); } }] });
return grid; }
function zoomMapTo(latitude, longitude, radius) { var geographic = geographichFromCentered({ latitude: latitude, longitude: longitude, radius: radius });
var zoom = $("#map").igMap("zoomToGeographic", geographic); }
// Calculates the geographich coordinates of a square around a central point and radius function geographichFromCentered(centered) { var geographic = { left: centered.longitude - centered.radius, top: centered.latitude - centered.radius, width: centered.radius * 2, height: centered.radius * 2 };
return geographic; } }); </script></body></html>
Hello,If you need any additional assistance with this case feel free to contact me. I will keep this case open for another three days while I am waiting for your response. If at that time you haven`t responded, I will close it. Please note that closed cases may be reopened within thirty days of closure.Thank you for choosing Infragistics components!
Best Regards,
Hello,
What's the modification you did?
Thanks for the input. But that appears to only work because the content you put in is larger that the height. I modified it to use the tree control and it still does not work correctly.
http://jsfiddle.net/8paLnsde/
Thanks for using Infragistics controls and especially the splitter :)
My suggestion is to use this sample that I have created for you - http://jsfiddle.net/8paLnsde/ . Please note, how the markup is placed in the sample.