Mobile app version of vmapp.org
Login or Join
Eichhorn148

: Would it be valid to use frames for an inhouse tool with a static list on the left that triggers content on the right? I'm replacing the interface of an old Visual FoxPro system my company

@Eichhorn148

Posted in: #Design #Frameset #Layout #WebsiteDesign

I'm replacing the interface of an old Visual FoxPro system my company has been using for the past 15 years. If there's one thing that users have been complaining about is that it is tedious.

So ease of use is what's driving my philosophy in the rebuild. As you can see from my mock-up I'm thinking of a left column containing several tabs with (ultimately) real-time queues/lists in each one. Clicking on an item in any of the queues would generate a slide-out menu with links to all related functions. These would include detail views, reports, and really large forms. I would really like all thatto show up on the right-hand side while keeping the left column static and in view all the time. My first thought is to use frames but that's something we avoid these days. Is this a valid case for frames or is there a better option?

10.02% popularity Vote Up Vote Down


Login to follow query

More posts by @Eichhorn148

2 Comments

Sorted by latest first Latest Oldest Best

 

@Jessie594

The use of frames is in the process of being phased out and there is a wide disparity between browsers on how frames are handled and displayed. You can achieve effectively the same with a more user friendly and sustainable by using AJAX and an empty DIV. Each one of the sub pages would be its own page anyway but rather than using a frame to access it you request it using AJAX and paste it into the empty div. This allows you to use a rotator icon to indicate that it is working (something very very hard with frames), allows you to work with the content from the sub page in a more friendly and interactive way, in addition there are a huge number of frameworks out there to make the job easier.

10% popularity Vote Up Vote Down


 

@Ann8826881

Clicking on an item in any of the queues would generate a slide-out menu with links to all related functions.


If you used frames you wouldn't be able to create the "slide-out menu". The slide-out menu looks as if it would need to appear in the "other" frame, which would be exceedingly difficult to do, especially to be associated with the clicked item (on the left).

Alternatively, this "secondary menu" could appear beneath the item just clicked (ie. in the same frame).

Other considerations with using frames (although the first two may not apply here):


Indexing is very problematic. An "inhouse tool" obviously won't need indexing in the public domain. However, an "inhouse" index might still apply.
Bookmarking/sharing links is not possible. This could be implemented as an additional (permalink) feature, but adds unnecessary complexity.
Difficult/impossible to create a "responsive" design if this tool is to be used on multiple platforms.
Frames (ie. <frameset> tag etc.) are "entirely obsolete" in HTML5. So you would need to fallback to an HTML4 DOCTYPE in the index document if you want to be compliant.


But otherwise I think this could still work as an "inhouse tool".




I certainly could use a div and populate it with content but we're talking about an inordinate amount of pages and the forms can potentially have nearly a hundred fields each. I can't fathom the JS it would take to pull that off.


UPDATE: I think closetnoc's suggestion is quite a reasonable one. I don't think it would necessarily involve much more work than using frames (but maybe I'm over simplifying your problem).

With frames, the user makes a selection in the left frame which requests a document from the server to populate the right frame.

Without frames, the user makes a selection in the left container which triggers an AJAX request for a document from the server (possibly the same document that would be used with a frame, less the "page wrapper" ie. <head> and <body> tags) and this is then applied to the innerHTML of the right containing element. An oversimplification perhaps.

This approach would be problematic if these "documents" currently depend on their own unique stylesheets. Although HTML5 does offer the scoped attribute for sandboxing CSS - which could get around this - but AFAIK is only supported by Firefox at the current time.

10% popularity Vote Up Vote Down


Back to top | Use Dark Theme