wwHoverPanel IFrame Popups

Home | Reset Page | Page generated: 5/23/2012 1:50:32 PM

Select a RSS or type in a Feed to display:

Rick Strahl's Web Log
  DropDownList and SelectListItem Array Item Updates in MVC
  Passing multiple POST parameters to Web API Controller Methods
  Amazon Product Advertising API SOAP Namespace Changes
  GZip/Deflate Compression in ASP.NET MVC
  Internet Explorer and Cookie Domains
  Getting a 'base' Domain from a Domain
  ASP.NET MVC Postbacks and HtmlHelper Controls ignoring Model Changes
  Wishful Thinking: Why can't HTML fix Script Attacks at the Source?
  Odd MVC 4 Beta Razor Designer Issue
  Physical Directories vs. MVC View Paths
  Creating a JSONP Formatter for ASP.NET Web API
  ASP.NET Web API and Simple Value Parameters from POSTed data


This example demonstrates using hover IFRAME panels to display fully self contained pages as popups in the current page. This differs from the normal hover behavior in that the pages displayed are loaded into an IFRAME rather than an inline DIV tag and so can contain fully self contained HTML and FORM tags. They can also handle their own logic outside of the context of a page.

IFRAME functionality is accessed with ShowIFrameAtMousePosition or ShowIFrameInPanel both of which display the IFRAME. Note that IFRAMEs behave a little differently than embedded hover windows in that IFRAMEs are fixed size and don't auto-adjust in size based on content so you need to set your original panel width to the desired size up front. Note that this frame is draggable which is enabled by using a client side wwDragBehavior and attaching it to the hover window.

Finally this form shows a drop down list, also using an IFRAME with content pulled from a separate page. The page loads and a selection then returns its selected value (a URL) back to the main page by calling back on the parent frame. This is highly useful in many situations for pop up help and selection lists or things like dynamic calendar popups. Communication between frames is easy once you figure it out and this page demonstrates how it's done.