I am using ejFileExplorer to show a given directory path of my application and all the available actions are working perfect. But as soon as I put it inside a bootstrap 4 tab, it starting to load like below:And I have to drag the splitter from left to right to make it looks like below:
Dragged splitter Explorer
As you can see in the image, footer section is not correctly positioned after the dragging done.
But if I put the explorer in the first tab of the tabbed pane, then there is no any errors with the styling as shown below:
Explorer in the First tab
But putting the explorer in the first tab does not fulfill my requirement and any suggestions to fix this issue would be appreciable.
Here is my code so far:<div class="card-header p-0 border-bottom-0">
<ul class="nav nav-tabs" id="employee-tab" role="tablist">
<li class="nav-item">
<a class="nav-link active" id="employee-general-tab" data-toggle="pill" rel='nofollow' href="#employee-general" role="tab" aria-controls="employee-general" aria-selected="true">General Information</a>
</li>
<li class="nav-item">
<a class="nav-link" id="employee-professional-tab" data-toggle="pill" rel='nofollow' href="#employee-professional" role="tab" aria-controls="employee-professional" aria-selected="false">Professional Information</a>
</li>
<li class="nav-item">
<a class="nav-link" id="employee-contact-tab" data-toggle="pill" rel='nofollow' href="#employee-contact" role="tab" aria-controls="employee-contact" aria-selected="false">Contact Information</a>
</li>
<li class="nav-item">
<a class="nav-link" id="employee-media-tab" data-toggle="pill" rel='nofollow' href="#employee-media" role="tab" aria-controls="employee-media" aria-selected="false">Media</a>
</li>
</ul>
</div>
<div class="card-body">
<div class="tab-content" id="employee-tabContent">
<div class="tab-pane fade active show" id="employee-general" role="tabpanel" aria-labelledby="employee-general-tab">
<!-- html code goes here --!>
</div>
<div class="tab-pane fade" id="employee-professional" role="tabpanel" aria-labelledby="employee-professional-tab">
<!-- html code goes here --!>
</div>
<div class="tab-pane fade" id="employee-contact" role="tabpanel" aria-labelledby="employee-contact-tab"><!-- html code goes here --!>
</div>
<div class="tab-pane fade" id="employee-media" role="tabpanel" aria-labelledby="employee-media-tab">
<div id="employee_media"></div><script type='text/javascript'>$(function () {
</div>
</div>
</div>
....
$('#employee_media').ejFileExplorer({
"path": "Files",
"ajaxAction": "http://mydomain.test/file-explorer",
"enableThumbnailCompress": true,
"width": "100%",
"layout": "largeIcons",
"toolsList": ["creation", "navigation", "addressBar", "editing", "copyPaste", "sortBy", "getProperties", "searchBar"],
"isResponsive": true
});
})
</script>
|
/* tab active event */
function Active(args) {
var feObj = $("#fileExplorer").ejFileExplorer("instance");
feObj._refreshResizeHandler();
}
|
|
Description |
Link |
|
Getting started |
|
|
How to section |
|
|
API reference |
|
|
Live demo |
$('#my-media-tab-item').on('click', function () {
var feObj = $("#employee_media").ejFileExplorer("instance");
feObj._refreshResizeHandler();
});
// then tried putting ejFileExplorer inside the onClick function
$('#my-media-tab-item').on('click', function () {
$('#employee_media').ejFileExplorer({
"path": "Files",
"ajaxAction": "http://mydomain.test/file-explorer",
"enableThumbnailCompress": true,
"width": "100%",
"layout": "largeIcons",
"toolsList": ["creation", "navigation", "addressBar", "editing", "copyPaste", "sortBy", "getProperties", "searchBar"],
"isResponsive": true
});
});
|
$("a[rel='nofollow' href='#employee-media']").on('shown.bs.tab', function(e) {
var feObj = $("#employee_media").ejFileExplorer("instance");
feObj._refreshResizeHandler();
});
|
$("a[rel='nofollow' href='#employee-media']").on('shown.bs.tab', function(e) {
// have to adjust the splitter sizes ...
$('#employee_media_splitter').ejSplitter({
properties: [
{paneSize: "15%"},
{paneSize: "85%"}
]
});
var feObj = $("#employee_media").ejFileExplorer("instance");
feObj._refreshResizeHandler();
});