View Full Version : onopenclose function to open a page in _parent frame

08-03-2010, 06:43 PM
1) Script Title: Accordion Content script (v1.9)

2) Script URL (on DD): http://www.dynamicdrive.com/dynamicindex17/ddaccordion_suppliment2.htm

3) Describe problem: how can I open a page in _parent frame when I ckick the expanded header?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml2/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">


<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

<script type="text/javascript" src="source_code/ddaccordion.js">

* Accordion Content script- (c) Dynamic Drive DHTML code library (www.dynamicdrive.com)
* Visit http://www.dynamicDrive.com for hundreds of DHTML scripts
* This notice must stay intact for legal use


<script type="text/javascript">

headerclass: "submenuheader", //Shared CSS class name of headers group
contentclass: "submenu", //Shared CSS class name of contents group
revealtype: "click", //Reveal content when user clicks or onmouseover the header? Valid value:
"click", "clickgo", or "mouseover"
mouseoverdelay: 200, //if revealtype="mouseover", set delay in milliseconds before header expands
collapseprev: true, //Collapse previous content (so only one open at any time)? true/false
defaultexpanded: [], //index of content(s) open by default [index1, index2, etc] [] denotes no
onemustopen: false, //Specify whether at least one header should be open always (so never all
headers closed)
animatedefault: false, //Should contents open by default be animated into view?
persiststate: true, //persist state of opened contents within browser session?
toggleclass: ["", ""], //Two CSS classes to be applied to the header when it's collapsed and
expanded, respectively ["class1", "class2"]
togglehtml: ["suffix", "<img src='plus.gif' class='statusicon' />", "<img src='minus.gif'
class='statusicon' />"], //Additional HTML added to the header when it's collapsed and expanded,
respectively ["position", "html1", "html2"] (see docs)
animatespeed: "fast", //speed of animation: integer in milliseconds (ie: 200), or keywords
"fast", "normal", or "slow"
oninit:function(headers, expandedindices){ //custom code to run when headers have initalized
if (expandedindices.length>0) //if there are 1 or more expanded headers
//Get "href" attribute of final expanded header to load into IFRAME
onopenclose:function(header, index, state, isuseractivated){ //custom code to run whenever a
header is opened or closed
if (state=="block" && isuseractivated==true){ //if header is expanded and as the result
of the user initiated action

window.location.replace(header.getAttribute('href')) target="_parent"



<style type="text/css">

margin: 5px 0;
padding: 0;
width: 189px; /*width of menu*/
border: 1px solid #9A9A9A;
border-bottom-width: 0;

.glossymenu a.menuitem{
background: black url(LeftMenuBack.gif) repeat-x bottom left;
font: bold 14px "Lucida Grande", "Trebuchet MS", Verdana, Helvetica, sans-serif;
color: white;
display: block;
position: relative; /*To help in the anchoring of the ".statusicon" icon image*/
width: auto;
padding: 4px 0;
padding-left: 10px;
text-decoration: none;

.glossymenu a.menuitem:visited, .glossymenu .menuitem:active{
color: white;

.glossymenu a.menuitem .statusicon{ /*CSS for icon image that gets dynamically added to headers*/
position: absolute;
top: 5px;
right: 5px;
border: none;

.glossymenu a.menuitem:hover{
background-image: url(LeftMenuBack2.gif);

.glossymenu div.submenu{ /*DIV that contains each sub menu*/
background: white;

.glossymenu div.submenu ul{ /*UL of each sub menu*/
list-style-type: none;
margin: 0;
padding: 0;

.glossymenu div.submenu ul li{
border-bottom: 1px solid blue;

.glossymenu div.submenu ul li a{
display: block;
font: normal 13px "Lucida Grande", "Trebuchet MS", Verdana, Helvetica, sans-serif;
color: black;
text-decoration: none;
padding: 2px 0;
padding-left: 10px;

.glossymenu div.submenu ul li a:hover{
background: #DFDCCB;
colorz: white;



<div style="position:absolute; top:0; left:0;">

<div class="glossymenu">
<a class="menuitem" href="msgFrmDept/index.html" target="_parent">Message from Department</a>
<a class="menuitem" href="Staff/index.html" target="_parent">Staff</a>
<a class="menuitem submenuheader" href="programmes/index.html" target="_parent">Academic Programmes</a>
<div class="submenu">
<li><a href="programmes/FT_BengBSE/index.html" target="_parent">BEng (UGC)</a></li>
<li><a href="programmes/PT_BengBSE/index.html" target="_parent">BEng (SF/PT)</a></li>
<li><a href="programmes/FT_BengBSE%20SF/index.html">BEng (SF/FT)</a></li>
<li><a href="programmes/HigherDip/index.html" target="_parent">High iploma (UGC)</a></li>
<li><a href="programmes/MScBSE/index.html" target="_parent">MSc/BSE (PT/FT)</a></li>
<li><a href="programmes/MScFM/index.html" target="_parent">MSc/FM (PT/FT)</a></li>
<li><a href="programmes/Fire_Safety/index.html" target="_parent">MSc/FSE (PT/FT)</a></li>
<li><a href="programmes/MEngBSE/index.html" target="_parent">MEng/BSE (FT)</a></li>
<a class="menuitem submenuheader" href="research/index.html" target="_parent">Research</a>
<div class="submenu">
<li><a href="research/MphilPHDStuides.html" target="_parent">PhD & MPhil Studies</a></li>
<li><a href="research/Alt_energy/index.html" target="_parent">Alternative & Renewable</a></li>
<li><a href="research/Acoustic/index.html">Building Acoustics & Vibration</a></li>
<li><a href="research/Automate/index.html" target="_parent">Building Automation & Energy

<li><a href="research/BEP/index.html" target="_parent">Building Environmental Performance</a></li>
<li><a href="research/BOM/index.html" target="_parent">Building Operation & Maintenance</a></li>
<li><a href="research/Electrical/index.html" target="_parent">Electrical Installations & Systems</a></li>
<li><a href="research/FM/index.html" target="_parent">Facility Management</a></li>
<li><a href="research/FireEng/index.html" target="_parent">Fire & Safety Engineering</a></li>
<li><a href="research/HVAC/index.html" target="_parent">HVAC & R System and Technology</a></li>
<li><a href="research/IEQ/index.html" target="_parent">Indoor Air Quality</a></li>
<a class="menuitem" href="consultancy/index.html" target="_parent">Consultancy Services</a>
<a class="menuitem" href="teachDvt/index.html" target="_parent">Teaching Development</a>
<a class="menuitem submenuheader" href="facilities/index.html" target="_parent">Facilities in Department</a>
<div class="submenu">
<li><a href="facilities/HVAC/index.html" target="_parent">HVAC Lab</a></li>
<li><a href="facilities/IEQ/index.html" target="_parent">Indoor Air Quality Lab</a></li>
<li><a href="facilities/Solar/index.html" target="_parent">Solar Energy Lab</a></li>
<li><a href="facilities/IB/index.html" target="_parent">Intelligent Building Lab</a></li>
<li><a href="facilities/FireEng/index.html" target="_parent">Fire Engineering Lab</a></li>
<li><a href="facilities/Electrical/index.html" target="_parent">Electrical Services Lab</a></li>
<li><a href="facilities/Lighting/index.html" target="_parent">Lighting Lab</a></li>
<li><a href="facilities/Acoustic/index.html" target="_parent">Accoustic Lab</a></li>
<li><a href="facilities/CAD/index.html" target="_parent">CAD & Development Centre</a></li>
<a class="menuitem submenuheader" href="researchCentre/index.html" target="_parent">Research Centrest</a>
<div class="submenu">
<li><a href="researchCentre/BEE/index.html" target="_parent">Building Enviroment Engineering</a></li>
<li><a href="researchCentre/Fire_Engineering/index.html" target="_parent">Fire Engineering</a></li>
<a class="menuitem" href="cpd/index.html" target="_parent">CPD Lecture</a>

<!--<p><iframe name="myiframe" target="_parent"></iframe></p>


08-04-2010, 07:07 AM
Please post a link to your website so we can see the problem first hand.

08-04-2010, 02:18 PM

Thank to help!

My web site is : www.do.bse.polyu.edu.hk

All single header link work fine (when click the header, right hand page will change correct), but all header with sub-menu cannot work!


08-05-2010, 05:17 PM
Please help!!!

08-06-2010, 06:12 AM
Try changing your onopenclose() event handler of the script to the below:

onopenclose:function(header, index, state, isuseractivated){ //custom code to run whenever a header is opened or closed
if (state=="block" && isuseractivated==true){ //if header is expanded and as the result of the user initiated action



08-06-2010, 11:57 AM

The Header parent windows link work
Thank You!