Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3
Section
Column
width65%

Motivating the Fluid Loader

Javascript development suffers, amongst other hazards, from considerable immaturity in the tool chain and packaging workflow. For example, here is the <head> material from one of the demonstration pages for the Fluid Inline Edit component:

Code Block
html
html
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  <title>Inline Edit Manual Test Page</title>
  <link rel="stylesheet" href="InlineEdit.css" type="text/css" media="screen" charset="utf-8" />
  <link href="fluid-components/css/jquery.tooltip.css" type="text/css" rel="stylesheet" media="all" />
        
  <script type="text/javascript" src="fluid-components/js/jquery/jquery-1.3.2.js"></script>
  <script type="text/javascript" src="fluid-components/js/jquery/jquery.keyboard-a11y.js"></script>
  <script type="text/javascript" src="fluid-components/js/jquery/jquery.tooltip.js"></script>
  <script type="text/javascript" src="fluid-components/js/jquery/jARIA.js"></script>
  <script type="text/javascript" src="fluid-components/js/fluid/Fluid.js"></script>
  <script type="text/javascript" src="fluid-components/js/fluid/InlineEdit.js"></script>
  <script type="text/javascript" src="tests/utils/DebugFocus.js"></script>

</head>
Column
solid
Panel
borderStyle
borderColor#566b30
bgColor#fff
titleBGColor#D3E3C4
borderStylesolid
titleOn this Page
Table of Contents
toc
maxLevel
5
minLevel2maxLevel5

To aid filesystem-based development, the "fluid-components" base package is typically checked out at a particular physical relative path to the working project, and all required files must be referenced at this path. This makes projects extremely fragile to being moved to different working environments, even by the same developer. In another working style, packages are referenced at "server-relative paths", for example "/fluid-components/js/jquery/jquery-1.3.1.js" - this at least allows the promise of portable paths between client-based and server-based environments, but places strong restrictions on deployment possibilities. In some client environments, such as Windows, this choice is not possible.

...