import React from 'react'; import ReactDOM from 'react-dom'; import JqxDockPanel from '../../../jqwidgets-react/react_jqxdockpanel.js'; class App extends React.Component { componentDidMount(){ document.getElementById('layout').addEventListener('click', (event) => { layoutOnClick(event); this.refs.DockPanel.refresh(); },true); } render () { let dockPanel1HTML = `
First Div
Second Div
Third Div
Fourth Div
`; let dockPanel2HTML = `
1
2
3
4
`; return (

Layout Types:
layout types

Spiral:
) } } ReactDOM.render(, document.getElementById('app')); for (let i = 0; i < 4; i++) { document.getElementsByClassName('DockPanel')[0].children[0].children[i].style.color = 'white'; document.getElementsByClassName('DockPanel')[1].children[0].children[i].style.color = 'white'; document.getElementsByClassName('DockPanel')[1].children[0].children[i].style.width = '20px'; document.getElementsByClassName('DockPanel')[1].children[0].children[i].style.height = '20px'; } function layoutOnClick (event) { let firstElement = document.getElementById('first'); let secondElement = document.getElementById('second'); let thirdElement = document.getElementById('third'); let fourthElement = document.getElementById('fourth'); let position = parseInt(event.clientX) - parseInt(event.target.offsetLeft); if (position < 55) { firstElement.setAttribute('dock', 'bottom'); firstElement.style.height = '105px'; secondElement.setAttribute('dock', 'left'); secondElement.style.width = '100px'; thirdElement.setAttribute('dock', 'left'); thirdElement.style.width = '100px'; fourthElement.setAttribute('dock', 'left'); fourthElement.style.width = '100px'; } else if (position < 115) { for (let i = 0; i < 4; i++) { document.getElementsByClassName('DockPanel')[0].children[0].children[i].style.width = '100px'; } firstElement.setAttribute('dock', 'left'); secondElement.setAttribute('dock', 'right'); thirdElement.setAttribute('dock', 'bottom'); thirdElement.style.height = '140px'; fourthElement.setAttribute('dock', 'top'); fourthElement.style.height = '70px'; } else if (position < 175) { for (let i = 0; i < 4; i++) { document.getElementsByClassName('DockPanel')[0].children[0].children[i].style.width = '150px'; } firstElement.setAttribute('dock', 'left'); secondElement.setAttribute('dock', 'left'); thirdElement.setAttribute('dock', 'left'); fourthElement.setAttribute('dock', 'left'); } else if (position < 235) { for (let i = 0; i < 4; i++) { document.getElementsByClassName('DockPanel')[0].children[0].children[i].style.height = '70px'; } firstElement.setAttribute('dock', 'top'); secondElement.setAttribute('dock', 'top'); thirdElement.setAttribute('dock', 'top'); fourthElement.setAttribute('dock', 'top'); } else { for (let i = 0; i < 4; i++) { document.getElementsByClassName('DockPanel')[0].children[0].children[i].style.width = '100px'; } firstElement.setAttribute('dock', 'left'); secondElement.setAttribute('dock', 'left'); thirdElement.setAttribute('dock', 'left'); fourthElement.setAttribute('dock', 'left'); } }