Results 1 to 2 of 2

Thread: Problem running accordion within AJAX tab

  1. #1
    Join Date
    Jun 2009
    Location
    Leeds UK
    Posts
    12
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Default Problem running accordion within AJAX tab

    Hi all,

    how can I run an accordion inside an AJAX tab. The accordion works fine to begin with but when I open a different tab it doesnt fire.

    Once I refresh the page it works fine again. So its as if I need to refresh the page for the accordion to work inside the AJAX tabs.

    The two scripts are shown below, can I combine these so the accordion fires each time I click a new tab??

    Any help is appreciated -

    [CODE]
    <script type="text/javascript">

    ddaccordion.init({
    headerclass: "question", //Shared CSS class name of headers group
    contentclass: "answer", //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 onMouseover
    collapseprev: false, //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 content.
    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: false, //persist state of opened contents within browser session?
    toggleclass: ["openanswer", "closedanswer"], //Two CSS classes to be applied to the header when it's collapsed and expanded, respectively ["class1", "class2"]
    togglehtml: ["prefix", "<img src='/content/en/questions/images/down.png' style='width:19px; height:15px; float:left; padding:7px 5px 0px 0px;' /> ", "<img src='/content/en/questions/images/up.png' style='width:19px; height:15px; float:left; padding:7px 5px 0px 0px' /> "], //Additional HTML added to the header when it's collapsed and expanded, respectively ["position", "html1", "html2"] (see docs)
    animatespeed: "slow", //speed of animation: integer in milliseconds (ie: 200), or keywords "fast", "normal", or "slow"
    oninit:function(expandedindices){ //custom code to run when headers have initalized
    //do nothing
    },
    onopenclose:function(header, index, state, isuseractivated){ //custom code to run whenever a header is opened or closed
    //do nothing
    }
    })

    </script>



    <script type="text/javascript">

    var countries=new ddajaxtabs("Questions", "countrydivcontainer")
    countries.setpersist(true)
    countries.setselectedClassTarget("link") //"link" or "linkparent"
    countries.init()

    </script>
    [CODE]
    Last edited by joemccarroll; 05-12-2011 at 08:13 AM.

  2. #2
    Join Date
    Jun 2009
    Location
    Leeds UK
    Posts
    12
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Default Running two scripts - please help!

    Hi,

    ive set up tabbed content which is controlled via AJAX.

    Within these tabs I have an accordion.

    On first page load everything works fine, but when I click on a tab and try to use the accordion it doesnt work.

    I need to tell the script to load the ddaccordion function each time the tab function is fired but I am unsure how to do this.

    The two handlers are shown below, can someone help with combining these so the accordion fires within all tabs?


    AJAX TABS -

    [CODE]

    <script type="text/javascript">

    var countries=new ddajaxtabs("Questions", "countrydivcontainer")
    countries.setpersist(true)
    countries.setselectedClassTarget("link") //"link" or "linkparent"
    countries.init()
    instance.expandit(tabid_or_position)

    </script>

    [CODE]

    ACCORDION -

    [CODE]

    <script type="text/javascript">

    ddaccordion.init({
    headerclass: "question", //Shared CSS class name of headers group
    contentclass: "answer", //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 onMouseover
    collapseprev: false, //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 content.
    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: false, //persist state of opened contents within browser session?
    toggleclass: ["openanswer", "closedanswer"], //Two CSS classes to be applied to the header when it's collapsed and expanded, respectively ["class1", "class2"]
    togglehtml: ["prefix", "<img src='/content/en/questions/images/down.png' style='width:19px; height:15px; float:left; padding:9px 5px 0px 0px;' /> ", "<img src='/content/en/questions/images/up.png' style='width:19px; height:15px; float:left; padding:9px 5px 0px 0px' /> "], //Additional HTML added to the header when it's collapsed and expanded, respectively ["position", "html1", "html2"] (see docs)
    animatespeed: "slow", //speed of animation: integer in milliseconds (ie: 200), or keywords "fast", "normal", or "slow"
    oninit:function(expandedindices){ //custom code to run when headers have initalized
    //do nothing
    },
    onopenclose:function(header, index, state, isuseractivated){ //custom code to run whenever a header is opened or closed
    //do nothing
    }
    })

    </script>

    [CODE]

    Thanks in advance

    Joe

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •