Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>Multiple docs opened in parallel</title>
</head>
<body>
  
  <div class="container">
    <div class="overlay opened">
      <div class="modal">
        <p>What file do you want to open? (enter absolute file path)</p>
          
        <form>
          <input type="text" name="path"
                 pattern="(.+)\.[0-9a-zA-Z]{2,5}$"
                 placeholder="/home/your-username/Documents/Spreadsheet.ods" />
          
          <button type="submit">Open</button>
          <button class="js-cancel hidden">Cancel</button>
        </form>
      </div>      
    </div>
    
    <nav>
      <ul>
        <li class="link open-doc">
          <a href="#">Add new Document</a>          
        </li>
        <li class="link doc">
          <a href="#" class="selected">Budget-2020.ods</a>      
        </li>
        <li class="link">
          <a href="#">Budget-2021.ods</a>
        </li>
      </ul>
    </nav>
  
    <main>
      
      <!-- doc iframes go here -->
      
      <iframe id="doc-1">Content iframe 2</iframe>
      <iframe id="doc-2">Content iframe 2</iframe>
      <iframe id="doc-3" class="opened">Content iframe 2</iframe>
      <iframe id="doc-4">Content iframe 2</iframe>
      <iframe id="doc-5">Content iframe 2</iframe>
      
    </main>
  </div>
  
</body>
</html>
 
(function() {
  var openedDocs = 0;
  
  function openDocument(path) {
    console.log('opening document ' + path);
    openedDocs++;
  }
  
  function toggleModal() {
    if (openedDocs > 0) {
      document.querySelector('.js-cancel').classList.remove('hidden');
    }
    
    var overlayEl = document.querySelector('.overlay');
    var operation = overlayEl.classList.contains('opened') ? 'remove' : 'add';
    console.log('toggling modal ' + operation);
    
    overlayEl.classList[operation]('opened');
  }
  
  function load() {
    var formEl = document.querySelector('.modal form');
    
    formEl.addEventListener('submit', function(evt) {
      evt.preventDefault();
      
      var pathEl = formEl.querySelector('[name=path]');
    
      openDocument(pathEl.value);
      
      pathEl.value = '';
    
      toggleModal();
    });
    
    document.querySelector('.open-doc a').addEventListener('click', function(evt) {
      evt.preventDefault();
      toggleModal();
    });
  }
  
  window.onload = load;
  
}());
Output

This bin was created anonymously and its free preview time has expired (learn why). — Get a free unrestricted account

Dismiss x
public
Bin info
anonymouspro
0viewers