Spry Accordian Widget

OK, I'm thinking this may be impossible to explain, but here
goes. I have a simple table. I install a Spry Accordian widget to
one of the table's columns, and the whole table (the who page
actually) explodes laterally, breaking apart pictures, and
segmenting what was just a simple table. What gives here? Any help
is MOST appreciated!!

add the option defaultPanel:-1 to the constructor
var bla = new
Spry.Widget.Accordion('id',{defaultPanel:-1});

Similar Messages

  • Problems with spry accordian widget in CS5

    I am updating a client's website and am having problems with the spry accordian widget. I read that it has been replaced with jQuery in the latest version and am told I can modify my existing spry widgets but cannot add new ones. In trying to modify the existing widget I get error alerts. I guess adding a new accordian tab is not considered a modification of the existing widget. I only have CS5 version of DW. What to do?  Thanks in advance for your help.

    Hi Patricia,
    you with your CS5 can continue to use the spry accordian widget BUT it's inopportune. I quote from different contributions of the forum: "Spry has been deprecated and is no longer officially supported by Adobe", “Adobe abandoned Spry late last year after CS6 came out. Future products will probably not contain any Spry so learning to use jQuery is a valuable skill to have for the future.” So I/we recommend you to switch to a jQuery library for your further requirements."
    You may have a look here: http://www.dynamicdrive.com/dynamicindex17/ddaccordionmenu.htm, where you will find a wide range of different menus.
    On the other hand - to become closer with your problem - you could send us the link to your website in question.
    Hans-Günter

  • Spry Accordian Tabs Question

    Hi
    I'm trying to create a spry accordian menu for a navbar and am having some trouble.
    This is the first time I've tried it so I would appreciate any help.
    The Client would like the tabs to be:
    Home
    Students
       High School Students
       College Students
    Professionals
    Parents/Educators
    Seminars
    Bio
    Q  & A Blog
    Testimonials
    So all they would like High School Students and College Students to be child tabs underneath the parent tabs and all other tabs to be parent tabs.
    They asked for a spry accordian.
    They want the nav bar to be on the left.
    Here is the link to the website online:
    http://www.elynncohen.com/index2spry2.html#
    and here are my questions:
    1. The spry accordian has a box around it on mouse down but I can't figure out how to get rid of it. I've checked all the CSS rules for the spry accordian and none of them seem to have rules around them.
    2. All the tabs have a content area underneath them and we only want content areas underneath the student tab. You see how it goes when you click on any of the tabs, you get a little thing that says content 1, 2 etc. I tried deleting them in the code and the page goes completely crazy when I do and the nav bar areas stretch all the way across the page.
    3. I can't figure out how to get the child tabs (which would be the tabs under students which say high school and college) to have two tabs. You will see that it does have the high school tab there now. When I try cutting and pasting the code to try to get two tabs, it does not work. The spry accordian framework only creates one content area under each tab.
    4. I'd like the child tabs to have a narrower height than the parent tabs, and be indented so that they will clearly be set off and different than the parent tabs.
    Any help would be much appreciated!
    Thanks!!!
    Here is my code:
    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Your Career Direction Career and College Counseling</title>
    <meta name="Keywords" content="career counseling, college counseling, job search, career choice, college options, career options, work, jobs, new opportunities, career change, new career, new job" />
    <meta name="Description" content="Your Career Direction :: Career and College Counseling" "Considering your college choices & career options" "Preparing for the world of work after college" "Seeking a new position to further your career"
    "In-transition and considering new opportunities"
    "Seeking to make a significant and meaningful career change"  />
    <meta name="Publisher" content="Your Career Direction, LLC" />
    <meta name="Copyright" content="Copyright 2012, Your Career Direction, LLC. All rights reserved." />
    <meta name="Author" content="Lisa Mark" />
    <meta name="Language" content="en-US" />
    <meta name="distribution" content="global" />
    <meta name="revisit-after" content="10 days" />
    <meta name="Robots" content="All" />
    <link rel="Index" href="index.html" />
    <link rel="Site Map" href="sitemap.html" />
    <script type="text/javascript" src="//use.typekit.net/ifb2bte.js"></script>
    <script src="SpryAssets/SpryAccordion.js" type="text/javascript"></script>
    <script type="text/javascript">try{Typekit.load();}catch(e){}</script>
    <style type="text/css">
    <!--
    body {
        margin: 0;
        padding: 0;
        color: #000;
        font-size: 100%;
        line-height: 1.4;
        background-image: url(images/background.gif);
        background-repeat: repeat;
    /* ~~ Element/tag selectors ~~ */
    ul, ol, dl { /* Due to variations between browsers, it's best practices to zero padding and margin on lists. For consistency, you can either specify the amounts you want here, or on the list items (LI, DT, DD) they contain. Remember that what you do here will cascade to the .nav list unless you write a more specific selector. */
        padding: 0;
        margin: 0;
    h1, h2, h3, h4, h5, h6, p {
        margin-top: 0;     /* removing the top margin gets around an issue where margins can escape from their containing div. The remaining bottom margin will hold it away from any elements that follow. */
        padding-right: 15px;
        padding-left: 15px;
    .container .sidebar1 h3 {
        padding-left: 0px;
        color: #C60651;
        font-size: x-large;
    h1 strong {
        color: #C60651;
        font-size: 90%;
        font-family: "Binary ITC Bold";
    h1 strong em {
    a img { /* this selector removes the default blue border displayed in some browsers around an image when it is surrounded by a link */
        border: none;
    /* ~~ Styling for your site's links must remain in this order - including the group of selectors that create the hover effect. ~~ */
    a:link {
        color:#414958;
        text-decoration: underline; /* unless you style your links to look extremely unique, it's best to provide underlines for quick visual identification */
    a:visited {
        color: #4E5869;
        text-decoration: underline;
    a:hover, a:active, a:focus { /* this group of selectors will give a keyboard navigator the same hover experience as the person using a mouse. */
        text-decoration: none;
    /* ~~ this container surrounds all other divs giving them their percentage-based width ~~ */
    .container {
        width: 80%;
        max-width: 1260px;/* a max-width may be desirable to keep this layout from getting too wide on a large monitor. This keeps line length more readable. IE6 does not respect this declaration. */
        min-width: 780px;/* a min-width may be desirable to keep this layout from getting too narrow. This keeps line length more readable in the side columns. IE6 does not respect this declaration. */
        background: #FFF; /* the auto value on the sides, coupled with the width, centers the layout. It is not needed if you set the .container's width to 100%. */
        margin-top: 0;
        margin-bottom: 0;
        margin-right: auto;
        margin-left: auto;
        border-right-width: thick;
        border-left-width: thick;
        border-right-style: solid;
        border-left-style: solid;
        border-right-color: #C60651;
        border-left-color: #C60651;
    /* ~~ the header is not given a width. It will extend the full width of your layout. It contains an image placeholder that should be replaced with your own linked logo ~~ */
    .header {
        padding-top: 40px;
    #Quote {
        float: right;
        clear: left;
        margin-right: 1%;
    /* ~~ These are the columns for the layout. ~~
    1) Padding is only placed on the top and/or bottom of the divs. The elements within these divs have padding on their sides. This saves you from any "box model math". Keep in mind, if you add any side padding or border to the div itself, it will be added to the width you define to create the *total* width. You may also choose to remove the padding on the element in the div and place a second div within it with no width and the padding necessary for your design.
    2) No margin has been given to the columns since they are all floated. If you must add margin, avoid placing it on the side you're floating toward (for example: a right margin on a div set to float right). Many times, padding can be used instead. For divs where this rule must be broken, you should add a "display:inline" declaration to the div's rule to tame a bug where some versions of Internet Explorer double the margin.
    3) Since classes can be used multiple times in a document (and an element can also have multiple classes applied), the columns have been assigned class names instead of IDs. For example, two sidebar divs could be stacked if necessary. These can very easily be changed to IDs if that's your preference, as long as you'll only be using them once per document.
    4) If you prefer your nav on the right instead of the left, simply float these columns the opposite direction (all right instead of all left) and they'll render in reverse order. There's no need to move the divs around in the HTML source.
    .sidebar1 {
        float: left;
        width: 15%;
        padding-bottom: 10px;
        margin-top: 40px;
        margin-left: 25px;
        background-color: #FFF;
        font-family: museo-sans;
    arial;
        max-width: 200px;
        min-width: 180px;
    .content {
        float: left;
        padding-top: 10px;
        padding-bottom: 10px;
        padding-left: 10;
        font-family: museo-sans;
    arial;
        margin-top: 40px;
        padding-right: 10px;
        width: 50px;
        font-size: large;
    .container .content p {
        padding-top: 0px;
    .sidebar2 {
        float: left;
        width: 20%;
        background-color: #D3CCB2;
        margin-top: 40px;
        padding-top: 10px;
        border-top-color: #FFF;
        border-right-color: #FFF;
        border-bottom-color: #FFF;
        border-left-color: #FFF;
        border-right-width: 5px;
        font-family: museo-sans;
    arial;
        font-size: 90%;
        right: 12%;
    /* ~~ This grouped selector gives the lists in the .content area space ~~ */
    .content ul, .content ol {
        padding-top: 0px;
        padding-right: 25px;
        padding-bottom: 15px;
        padding-left: 40px;
        font-family: museo-sans; arial;
        font-size: 100%;
        color: #666;
    .container .content p {
        font-family: museo-sans;
    arial;
        padding-top: 0px;
        padding-left: 17px;
        padding-bottom: 0px;
    #Quote {
        float: right;
        clear: both;
    /* ~~ The navigation list styles (can be removed if you choose to use a premade flyout menu like Spry) ~~ */
    ul.nav {
        list-style: none; /* this creates the space between the navigation on the content below */
        font-family:museo-sans; arial;
        line-height: 250%;
    .nav {
        font-family: museo-sans;
    arial;
        padding-left: 0px;
    ul.nav li {
        font-family: museo-sans; arial;
        padding-bottom: 10px;
    ul.nav a, ul.nav a:visited { /* grouping these selectors makes sure that your links retain their button look even after being visited */
        display: block; /* this gives the link block properties causing it to fill the whole LI containing it. This causes the entire area to react to a mouse click. */
        text-decoration: none;
        color: #333333;
        background-color: #FFF;
        font-family: museo-sans; arial;
        padding-top: 5px;
        padding-right: 5px;
        padding-bottom: 10px;
        padding-left: 15px;
    ul.nav a:hover, ul.nav a:active, ul.nav a:focus { /* this changes the background and text color for both mouse and keyboard navigators */
        color: #C60651;
        font-family:museo-sans; arial;
        background-color: #FFF;
        background-image: url(images/navbar2.gif);
        padding-bottom: 10px;
    .content img {
    /* ~~The footer ~~ */
    .footer {
        position: relative;/* this gives IE6 hasLayout to properly clear */
        clear: both; /* this clear property forces the .container to understand where the columns end and contain them */
        padding-top: 0px;
        padding-right: 0;
        padding-bottom: 10px;
    /* ~~miscellaneous float/clear classes~~ */
    .fltrt {  /* this class can be used to float an element right in your page. The floated element must precede the element it should be next to on the page. */
        float: right;
        margin-left: 8px;
    .fltlft { /* this class can be used to float an element left in your page. The floated element must precede the element it should be next to on the page. */
        float: left;
        margin-right: 8px;
    .clearfloat { /* this class can be placed on a <br /> or empty div as the final element following the last floated div (within the #container) if the #footer is removed or taken out of the #container */
        clear:both;
        height:0;
        font-size: 1px;
        line-height: 0px;
    .container .content {
        width: 50%;
        font-size: large;
        font-family: museo-sans; arial;
    #footer {    width: 100%;
        background-color: #FFF;
    .container .sidebar2 h4 img {
        padding-left: 20px;
        padding-top: 0px;
    .sidebar2 p img {
        border: medium solid #C60651;
    #Insert_logo2 {
        border-top-width: 4px;
        border-right-width: 4px;
        border-bottom-width: 4px;
        border-left-width: 4px;
        border-top-color: #fff;
        border-right-color: #fff;
        border-bottom-color: #fff;
        border-left-color: #fff;
    .container .content p .content strong {
        font-family: museo-sans; arial;
    .container .content .content {
        font-family: museo-sans; arial;
    .container .content ul li strong {
        font-family: museo-sans;
    arial;
        font-size: 95%;
        line-height: 150%;
        list-style-type: disc;
    .container .content ul {
    test {
        font-family: "Binary ITC Bold";
    .container .sidebar2 p img {
        margin-right: auto;
        margin-left: auto;
        border-top-width: medium;
        border-right-width: medium;
        border-bottom-width: medium;
        border-left-width: medium;
        border-top-color: #C60651;
        border-right-color: #C60651;
        border-bottom-color: #C60651;
        border-left-color: #C60651;
    li strong {
        line-height: 130%;
        list-style-type: circle;
        color: #978980;
    .container .content ul {
    .container .sidebar1 .nav {
        margin-top: 10px;
        margin-bottom: 10px;
    .sidebar1 .nav li {
        padding-bottom: 10%;
    .nav li a {
        background-image: url(images/navbar2.gif);
        background-repeat: no-repeat;
        background-position: right center;
        left: auto;
        right: auto;
        clip: rect(auto,auto,auto,auto);
    .container .sidebar1 .nav li a {
    .container .sidebar1 h6 {
        padding: 0px;
        color: #000000;
    #footer h3 strong {
        font-size: 60%;
        color: #978980;
    .container .content p {
        padding-right: 0%;
        padding-left: 0%;
        font-size: 85%;
    .container .sidebar2 p {
        padding-right: 8%;
        padding-left: 8%;
        padding-top: 5px;
    #Insert_logo2 #Insert_logo2 {
        padding-left: 15px;
    .container .content ul {
        color: #C60651;
    h6 {
        color: #978980;
        font-family: museo-sans;
    arial;
        font-size: 82%;
        padding-left: 20%;
        text-align: left;
        text-indent: 8px;
    .nav li a {
        padding-bottom: 10px;
    h8 {
        font-family: museo-sans; arial;
        font-size: 100%;
    h4 {
        font-family: museo-sans;
    arial;
        font-size: 100%;
        color: #C60651;
        padding-left: 17px;
        padding-top: 5px;
        padding-bottom: 0px;
    .container .content p {
        padding-left: 17px;
        padding-right: 30px;
    .sidebar1 h8 strong {
        font-size: 80%;
        font-family:museo-sans; arial;
    .container .sidebar1 h7 {
        font-size: 40%;
        color: #978980;
    h7 {
        font-family: museo-sans; arial;
        font-size: 15%;
    .container .sidebar1 h8 {
        font-family: museo-sans; arial;
    .sidebar2 p img {
            max-width: 100%;
    .container .content img {
        padding-left: 3%;
    img {
        position: static;
        text-align: left;
    body,td,th {
        font-family: museo-sans; arial;
    h5 {
        font-size: 150%;
        color: #C60651;
        padding-left: 0px;
        font-family:museo-sans; arial;
    .container .content p {
        padding-left: 17px;
        padding-right: 30px;
        font-size: 87%;
    .container .sidebar2 p {
        font-size: 90%;
    .container .sidebar1 .nav li {
        font-family: museo-sans;
    arial;
    .container .sidebar1 .nav li a {
        padding-left: 0px;
        margin-bottom: 0px;
        height: 30px;
    li a {
        padding-left: 2px;
    -->
    </style><!--[if lte IE 7]>
    <style>
    .content { margin-right: -1px; } /* this 1px negative margin can be placed on any of the columns in this layout with the same corrective effect. */
    ul.nav a { zoom: 1; }  /* the zoom property gives IE the hasLayout trigger it needs to correct extra whiltespace between the links */
    </style>
    <![endif]-->
    <link href="SpryAssets/SpryAccordion.css" rel="stylesheet" type="text/css">
    </head>
    <body><script type="text/javascript">
    function pageWidth() {
    return window.innerWidth != null? window.innerWidth : document.documentElement && document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body != null ? document.body.clientWidth : null;
    function pageHeight() {
    return window.innerHeight != null? window.innerHeight : document.documentElement && document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body != null? document.body.clientHeight : null;
    </script>
    <div class="container">
      <div class="header"><!-- end .header -->
        <p class="clearfloat"><a href="#index.html" id="Insert_logo2"><img src="images/YCD-logo-tag-RGB-web-SM.gif" alt="Your Career Direction Logo" name="Insert_logo" width="50%" id="Insert_logo2" style="background: #FFF
        ; display:block;" /></a></p>
        <div id="Quote"><img src="images/quote.gif" alt="Choose a job you love" width="355" height="81"></div>
        <p class="clearfloat"> </p>
    </div>
      <div class="sidebar1">
        <ul class="nav">
          <li>
            <div id="Accordion1" class="Accordion" tabindex="0">
              <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Home</a></div>
                <div class="AccordionPanelContent">Content 1</div>
              </div>
              <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Students</a></div>
                <div class="AccordionPanelContent"><a href="#">High School</a></div>
              </div>
              <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Professional</a></div>
                <div class="AccordionPanelContent">Content 3</div>
              </div>
              <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Parent/Educator</a></div>
                <div class="AccordionPanelContent">Content 4</div>
              </div>
              <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Seminars</a></div>
                <div class="AccordionPanelContent">Content 5</div>
              </div>
              <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Bio</a></div>
                <div class="AccordionPanelContent">Content 6</div>
              </div>
              <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Q &amp; A Blog</a></div>
                <div class="AccordionPanelContent">Content 7</div>
              </div>
              <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Testimonials</a></div>
                <div class="AccordionPanelContent">Content 8</div>
              </div>
            </div>
          </li>
        </ul>
      </div>
      <div class="content">
    <p>Given today's competitive job market, global economy, and changed corporate culture,
    we can no longer depend upon others to ensure our professional futures. Choosing or
    changing your career direction requires self-reflection, career education and an action plan.</p>
    <img src="images/Whether-you-are-.gif" alt="Whether you are considering your college choices and career options" width="197" height="31" align="left">
    <ul>
          <br><br><li><strong>Considering your college choices &amp; career options</strong></li>
          <li><strong>Preparing for the world of work after college</strong></li>
          <li><strong>Seeking a new position to further your career</strong></li>
          <li><strong>In-transition and considering new opportunities</strong></li>
          <li><strong>Seeking to make a significant and meaningful career</strong> <strong>change</strong></li>
        </ul>
    <img src="images/Onethingisforsureraster.gif" width="352" height="49" alt="One thing is for sure, we all want to direct our own careers, our own lives!">
    <br><p> Building a successful and rewarding career requires linking your interests, education and experience with employment trends, growth industries, and career choices. It takes making smart decisions about your college major, vocational training and continuing education options. With enthusiasm, persistence and top notch job search skills, you can succeed in finding a path to career that is right for you.</p>
    <p> We are your advocate. We listen, assess, strategize, inspire, counsel, and network on your behalf. With a personalized, holistic approach, we'll work with you to help you create an action plan; a path designed to get you to where you want to go and become what you want to be.</p>
    <img src="images/yourcareerourpassionraster.gif" width="441" height="20" alt="At Your Career Direction, YOUR career is our passion!"> </div>
      <div class="sidebar2">
        <p><img src="images/Counselingastudent.gif" width="100%" alt="Lisa Mark counseling a student"></p>
        <p>Our mission is to help you explore, choose and create your direction for an exciting and rewarding career path.</p>
         <p>We incorporate our experience with today's job market and career counseling expertise with your passions and interests. We'll introduce you to new career ideas, target companies and generate job and internship opportunities for you.</p>
         <p>We provide step by step guidance to ensure your success during the college application, job interview
    and decision making process.
    </p>
    </div>
      <div class="footer">
        <div id="footer">
          <h6 align="left"> Your Career Direction, LLC •  96 Harvard Avenue, Maplewood, N.J. 07040 • (973) 996-0207 • [email protected]</h6>
        </div>
        <p> </p>
      <!-- end .footer --></div>
    <!-- end .container --></div>
    <script type="text/javascript">
    var Accordion1 = new Spry.Widget.Accordion("Accordion1");
    </script>
    </body>
    </html>

    1. The spry accordian has a box around it on mouse down but I can't figure out how to get rid of it. I've checked all the CSS rules for the spry accordian and none of them seem to have rules around them.
    2. All the tabs have a content area underneath them and we only want content areas underneath the student tab. You see how it goes when you click on any of the tabs, you get a little thing that says content 1, 2 etc. I tried deleting them in the code and the page goes completely crazy when I do and the nav bar areas stretch all the way across the page.
    3. I can't figure out how to get the child tabs (which would be the tabs under students which say high school and college) to have two tabs. You will see that it does have the high school tab there now. When I try cutting and pasting the code to try to get two tabs, it does not work. The spry accordian framework only creates one content area under each tab.
    4. I'd like the child tabs to have a narrower height than the parent tabs, and be indented so that they will clearly be set off and different than the parent tabs.
    1. Line 454
    <div id="Accordion1" class="Accordion" tabindex="0" style="outline: none;">
    2 & 3. Change your code from Line 455 - 491:
    <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Home</a></div>
              </div>
              <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Students</a></div>
                <div class="AccordionPanelContent"><a href="#">High School</a><br/><a href="#" style="margin-top: -30px;">College</a></div>
              </div>
              <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Professional</a></div>
              </div>
              <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Parent/Educator</a></div>
              </div>
              <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Seminars</a></div>
              </div>
              <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Bio</a></div>
              </div>
              <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Q &amp; A Blog</a></div>
              </div>
              <div class="AccordionPanel">
                <div class="AccordionPanelTab"><a href="#">Testimonials</a></div>
              </div>
            </div>
          </li>
        </ul>
      </div>
    4. Append your HTML for child tabs like this:
    <div class="AccordionPanelContent" id="submenu"><a href="#">High School</a></div>
    Create a new #submenu css rule in your CSS document and set styling the way you want it.

  • How to apply different styles to multiple spry accordian panels?

    Hi all,
    I have a website that I'm building that has multiple spry accordian features on it.
    I am trying to apply different styles to each accordian. A problem arises when I try to place an accordian within another accordian.
    I have styled two different background images for two of the accordians for the styles (AccordionPanelTab, AccordionPanelTabHover and AccordionPanelOpen AccordionPanelTabHover) which work fine.
    When I try and place an accordian within another accordian the background image for this accordian for the styles (AccordionPanelTab and AccordionPanelOpen AccordionPanelTabHover) has the different style applyed that I stated in the accordion.css file, however the style (AccordionPanelTabHover) has the same style as the accordian it is within even though in the accordion.css file I stated a different background image.
    I hope all this makes sence below is my source and CSS Code.
    I appriciate any help that can be given to help resolve this issue I am running in too.
    Source Code
    <div id="content">
    <p><span class="first_header_word_packages">Welcome</span> <span class="header_word_packages">to our packages page</span></p>
    <p class="content_txt">Here you can build the website package that matches your business needs as well as being able to work out the cost of your site without having to worry about scary hidden costs at a later date.</p>
    <p class="content_txt"> We have two packages available for our customers;</p>
    <div id="Accordion1" class="Accordion" tabindex="0">
      <div class="AccordionPanel">
        <div class="AccordionPanelTab"></div>
        <div class="AccordionPanelContent">
       <p>Text Goes Here</p>
        <div id="Accordion2" class="Accordion" tabindex="0">
          <div class="AccordionPanel">
        <div class="AccordionPanelTab"></div>
        <div class="AccordionPanelContent">
        <p>Text Goes Here</p>
        </div><!-- end #Accordion2 Content -->
      </div><!-- end #AccordionPanel -->
    </div><!-- end #Accordion2 -->
        </div><!-- end #Accordion1 Content -->
      </div><!-- end #AccordionPanel -->
    </div><!-- end #Accordion1 -->
    <div id="Accordion3" class="Accordion" tabindex="0">
      <div class="AccordionPanel">
        <div class="AccordionPanelTab"></div>
        <div class="AccordionPanelContent">
             <p>Text Goes Here</p>
          <div id="Accordion4" class="Accordion" tabindex="0">
            <div class="AccordionPanel">
        <div class="AccordionPanelTab"></div>
        <div class="AccordionPanelContent">
         <p>Text Goes Here</p>
        </div><!-- end #Accordion4 Content -->
      </div><!-- end #AccordionPanel -->
    </div><!-- end #Accordion4 -->
        </div><!-- end #Accordion3 Content -->
      </div><!-- end #AccordionPanel -->
    </div><!-- end #Accordion3 -->
    </div><!-- end #content -->
    CSS
    @charset "UTF-8";
    /* SpryAccordion.css - version 0.5 - Spry Pre-Release 1.6.1 */
    /* Copyright (c) 2006. Adobe Systems Incorporated. All rights reserved. */
    /* This is the selector for the main Accordion container. For our default style,
    * we draw borders on the left, right, and bottom. The top border of the Accordion
    * will be rendered by the first AccordionPanelTab which never moves.
    * If you want to constrain the width of the Accordion widget, set a width on
    * the Accordion container. By default, our accordion expands horizontally to fill
    * up available space.
    * The name of the class ("Accordion") used in this selector is not necessary
    * to make the widget function. You can use any class name you want to style the
    * Accordion container.
    .Accordion {
              border-left: solid 1px gray;
              border-right: solid 1px black;
              border-bottom: solid 1px gray;
              overflow: hidden;
    /* This is the selector for the AccordionPanel container which houses the
    * panel tab and a panel content area. It doesn't render visually, but we
    * make sure that it has zero margin and padding.
    * The name of the class ("AccordionPanel") used in this selector is not necessary
    * to make the widget function. You can use any class name you want to style an
    * accordion panel container.
    .AccordionPanel {
              margin: 0px;
              padding: 0px;
    /* This is the selector for the AccordionPanelTab. This container houses
    * the title for the panel. This is also the container that the user clicks
    * on to open a specific panel.
    * The name of the class ("AccordionPanelTab") used in this selector is not necessary
    * to make the widget function. You can use any class name you want to style an
    * accordion panel tab container.
    * NOTE:
    * This rule uses -moz-user-select and -khtml-user-select properties to prevent the
    * user from selecting the text in the AccordionPanelTab. These are proprietary browser
    * properties that only work in Mozilla based browsers (like FireFox) and KHTML based
    * browsers (like Safari), so they will not pass W3C validation. If you want your documents to
    * validate, and don't care if the user can select the text within an AccordionPanelTab,
    * you can safely remove those properties without affecting the functionality of the widget.
    .AccordionPanelTab {
              background-color: #CCCCCC;
              border-top: solid 1px black;
              border-bottom: solid 1px gray;
              margin: 0px;
              padding: 2px;
              cursor: pointer;
              -moz-user-select: none;
              -khtml-user-select: none;
    /* This is the selector for a Panel's Content area. It's important to note that
    * you should never put any padding on the panel's content area if you plan to
    * use the Accordions panel animations. Placing a non-zero padding on the content
    * area can cause the accordion to abruptly grow in height while the panels animate.
    * Anyone who styles an Accordion *MUST* specify a height on the Accordion Panel
    * Content container.
    * The name of the class ("AccordionPanelContent") used in this selector is not necessary
    * to make the widget function. You can use any class name you want to style an
    * accordion panel content container.
    .AccordionPanelContent {
              overflow: auto;
              margin: 0px;
              padding: 0px;
    /* This is an example of how to change the appearance of the panel tab that is
    * currently open. The class "AccordionPanelOpen" is programatically added and removed
    * from panels as the user clicks on the tabs within the Accordion.
    .AccordionPanelOpen .AccordionPanelTab {
              background-color: #EEEEEE;
    /* This is an example of how to change the appearance of the panel tab as the
    * mouse hovers over it. The class "AccordionPanelTabHover" is programatically added
    * and removed from panel tab containers as the mouse enters and exits the tab container.
    .AccordionPanelTabHover {
              color: #555555;
    .AccordionPanelOpen .AccordionPanelTabHover {
              color: #555555;
    /* This is an example of how to change the appearance of all the panel tabs when the
    * Accordion has focus. The "AccordionFocused" class is programatically added and removed
    * whenever the Accordion gains or loses keyboard focus.
    .AccordionFocused .AccordionPanelTab {
              background-color: #3399FF;
    /* This is an example of how to change the appearance of the panel tab that is
    * currently open when the Accordion has focus.
    .AccordionFocused .AccordionPanelOpen .AccordionPanelTab {
              background-color: #33CCFF;
    /* Rules for Printing */
    @media print {
      .Accordion {
      overflow: visible !important;
      .AccordionPanelContent {
      display: block !important;
      overflow: visible !important;
      height: auto !important;
    #Accordion1  .AccordionPanelTab {
    height:75px;
    width:285px;
    background:url(../images/package_spry_tab_bg1.png);}
    #Accordion1 .AccordionPanelTabHover,
    #Accordion1 .AccordionPanelOpen .AccordionPanelTabHover {
    background:url(../images/package_spry_tab_bg1_RO.png);}
    #Accordion2  .AccordionPanelTab {
    height:44px;
    width:469px;
    background:url(../images/packages_spry1.png);}
    #Accordion2 .AccordionPanelTabHover,
    #Accordion2 .AccordionPanelOpen .AccordionPanelTabHover {
    background:url(../images/packages_spry1_ro.png);}
    #Accordion3  .AccordionPanelTab {
    height:75px;
    width:285px;
    background:url(../images/package_spry_tab_bg2.png);}
    #Accordion3 .AccordionPanelTabHover,
    #Accordion3 .AccordionPanelOpen .AccordionPanelTabHover {
    background:url(../images/package_spry_tab_bg2_RO.png);}
    #Accordion4  .AccordionPanelTab {
    height:44px;
    width:469px;
    background:url(../images/packages_spry2.png);}
    #Accordion4 .AccordionPanelTabHover,
    #Accordion4 .AccordionPanelOpen .AccordionPanelTabHover {
    background:url(../images/packages_spry2_ro.png);}

    Okay guys,
    I figured it out, if anyone was having the same problem as me and looking on this thread for the answer, here it is.
    Firstly if you're wanting to seperatly style two or more Spry Accordions that are not within each other e.g.
    <div id="Accordion1" class="Accordion" tabindex="0">
      <div class="AccordionPanel">
        <div class="AccordionPanelTab">Label 1</div>
        <div class="AccordionPanelContent">
       <p>Content Goes Here </p>
    </div><!-- end #Accordion1 Content -->
      </div><!-- end #Accordion1 .AccordionPanel -->
    </div><!-- end #Accordion1 -->
    <div id="Accordion2" class="Accordion" tabindex="0">
      <div class="AccordionPanel">
        <div class="AccordionPanelTab">Label 1</div>
        <div class="AccordionPanelContent">
       <p>Content Goes Here </p>
    </div><!-- end #Accordion2 Content -->
      </div><!-- end #Accordion2 .AccordionPanel -->
    </div><!-- end #Accordion2 -->
    You don't have to do this, as long as you have seperate ID's for the divs (which dreamweaver automatically does anyway) you'll be fine.
    However if for some reason you want to put one accordion inside another like I did e.g.
    <div id="Accordion1" class="Accordion" tabindex="0">
      <div class="AccordionPanel">
        <div class="AccordionPanelTab">Label 1</div>
        <div class="AccordionPanelContent">
       <p>Content Goes Here </p>
    <div id="Accordion2" class="Accordion" tabindex="0">
      <div class="AccordionPanel">
        <div class="AccordionPanelTab">Label 1</div>
        <div class="AccordionPanelContent">
       <p>Content Goes Here </p>
    </div><!-- end #Accordion2 Content -->
      </div><!-- end #Accordion2 .AccordionPanel -->
    </div><!-- end #Accordion2 -->
    </div><!-- end #Accordion1 Content -->
      </div><!-- end #Accordion1 .AccordionPanel -->
    </div><!-- end #Accordion1 -->
    Too style Accordian 1 & 2 so their tabs both have different backgrounds and Hover background when the content panel is open and closed you have to style it in the CSS they following way;
    CSS
    #Accordion1  .AccordionPanelTab {
    height:75px;
    width:285px;
    background:url(../images/package_spry_tab_bg.png);}
    #Accordion1 .AccordionPanelTabHover,
    #Accordion1 .AccordionPanelOpen .AccordionPanelTabHover {
    height:75px;
    width:285px;
    background:url(../images/package_spry_tab_bg_RO.png);}
    #Accordion2  .AccordionPanelTab {
    height:44px;
    width:469px;
    background:url(../images/packages_spry.png);}
    #Accordion2 .AccordionPanelClosed .AccordionPanelTabHover,
    #Accordion2 .AccordionPanelOpen .AccordionPanelTabHover {
    height:44px;
    width:469px;
    background:url(../images/packages_spry_ro.png);}
    Normally when styling two seperate spry accordions you can just use the following code
    #Accordion1  .AccordionPanelTab {
    height:75px;
    width:285px;
    background:url(../images/package_spry_tab_bg.png);}
    #Accordion1 .AccordionPanelTabHover,
    #Accordion1 .AccordionPanelOpen .AccordionPanelTabHover {
    height:75px;
    width:285px;
    background:url(../images/package_spry_tab_bg_RO.png);}
    The only difference with styling a Spry accordion within another to ensure they have different hover backgrounds when the content panel is open and closed is ".AccordionPanelClosed".
    Hope this helped anyone who was having the same issue I was.

  • Spry Accordion widget Question

    Have a Dreamweaver question about the Spry Accordion widget.
    I am designing a website for a real estate company. I will have  different pages set up as a state page with a sub-level of cities within  the page. I am using the accordion widget for the cities. As you know,  you click on the panel tab and the next panel drops up or down  closing/opening the previous panel.
    What I would like to do is add an action anchor (view all properties)  outside the spry widget to open all the panels at once if a client  wanted to see the entire list. However, I would still want the  functionality of the panels to be collapsible. Is this possible? Is  there a bit of code I would have to add to the JavaScript?
    Is there a genius out there that can hook me up with some knowledge?

    I actually did away with the accordian widget and went a different route. It was too glitchy. Thanks for your input though. I will take note of the suggestions you provided and maybe try it out one day.

  • Spry Accordian - Javascript Variable - Replace simple ASP

    Hey Gang,
    I'm not familiar with Javasscript Syntax as much as I'd like
    to be.
    But I need to quickly replace this simple VBScript for
    grabbing a querysting
    and using it in the page
    Basically I'm using the Spry Accordian and setting the
    default panel based
    on a querystring variable.
    There may be a far better way, but this is a quick example.
    What I need is a Javascript solution.
    Thanks
    -Dave
    <%
    Select case Request.Querystring("p")
    Case "0"
    strPanel = "0"
    Case "1"
    strPanel = "1"
    End select
    %>
    <script type="text/javascript">
    <!--
    var Accordion1 = new Spry.Widget.Accordion("Accordion1", {
    defaultPanel: <%=
    strPanel %> });
    //-->
    </script>

    Hi Gramps!
    Appreciate your advice and reference to Backyard Furniture. I've been working on it and thought I was getting close...but the revised coding just created havoc on my site.
    Could you please have a look at  http://www.trafficnetwork.ecanvas.com.sg/TMA.html and advice?
    Cheers!

  • Accordian Widget!

    Hi
    I am using Spry for Second time but i have gone through the
    Sample's and i like it very much.
    I am struck on a problem using Accordian Widget.I am using
    AccordionPanelTab.It is very fine but the problem is that the
    content of the Tab contains the URL of other site.So when i am
    cliking on that it is openning the whole Page in the Same content
    so i am loosing the Tabbed Feature provided by the Spry.
    Please HELP ME OUT!!!!!!!!!!!!!:(
    It is very Urgent to me.
    Thanks in Advance, i will Owe you this Thing.
    Regards,
    Mohammed Junaid

    <%@ page language="java" contentType="text/html" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01
    Transitional//EN" "
    http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html;
    charset=iso-8859-1" />
    <title>ABC</title>
    </head
    <script language="javascript" type="text/javascript"
    src="widgets/accordion/SpryAccordion.js"></script>
    <script language="javascript" type="text/javascript"
    src="includes/SpryDOMUtils.js"></script>
    <script language="javascript" type="text/javascript"
    src="widgets/accordion/accordion_unobtrusive.js"></script>
    <link href="widgets/accordion/SpryAccordion.css"
    rel="stylesheet" type="text/css" />
    <link href="css/samples.css" rel="stylesheet"
    type="text/css" />
    <body>
    <h3>ABC</h3>
    <div class="Accordion" id="Accordion" tabindex="0">
    <div class="AccordionPanel">
    <div class="AccordionPanelTab">XYZ1</div>
    <div class="AccordionPanelContent">Content for XYZ1
    come's here!<br /></div>
    </div>
    <div class="AccordionPanel">
    <div class="AccordionPanelTab">XYZ2</div>
    <div align="center"> Content for XYZ2 come's
    here!<br /></div>
    </div>
    </div>
    <div class="AccordionPanel">
    <div class="AccordionPanelTab">XYZ3</div>
    <div > Content for XYZ3 come's here!<br
    /></div>
    </div>
    <div class="AccordionPanel">
    <div class="AccordionPanelTab">XYZ4</div>
    <div > Content for XYZ4 come's here!<br
    /></div>
    </div>
    </div>
    </body>
    <script type="text/javascript">
    var acc7 = new Spry.Widget.Accordion("Accordion", {
    useFixedPanelHeights: false });
    </script>
    <script type="text/javascript">
    var acc1 = new Spry.Widget.Accordion("Accordion", {
    defaultPanel: 0 });
    </script>
    <script type="text/javascript">
    var acc1 = new Spry.Widget.Accordion("Accordion", {
    duration: 250, fps: 90 });
    </script>
    </html>

  • Spry Accordian Invalid XHTML

    Hi:
    I created a spry accordian from DW CS3. Insert/Spry/Spry Accordian, but when I run through the W3C validation site I get the following error report:
    Line 182, Column 49:         Attribute "tabindex" exists, but can not be used for this element.
    <div id="Accordion1" class="Accordion" tabindex="0">

    You have used the attribute named above in your document, but the       document type you are using does not support that attribute for this       element. This error is often caused by incorrect use of the "Strict"       document type with a document that uses frames (e.g. you must use       the "Transitional" document type to get the "target" attribute), or       by using vendor proprietary extensions such as "marginheight" (this       is usually fixed by using CSS to achieve the desired effect instead).
    This error may also result if the element itself is not supported in       the document type you are using, as an undefined element will have no       supported attributes; in this case, see the element-undefined error       message for further information.
    How to fix: check the spelling and case of the element and attribute,        (Remember XHTML is all lower-case) and/or        check that they are both allowed in the chosen document type, and/or       use CSS instead of this attribute. If you received this error when using the        <embed> element to incorporate flash media in a Web page, see the        FAQ item on valid flash.
    Here's the code straight from DW. Any help much appreciated TIA!
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Untitled Document</title>
    <script src="SpryAssets/SpryAccordion.js" type="text/javascript"></script>
    <link href="SpryAssets/SpryAccordion.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
    <div id="Accordion1" class="Accordion" tabindex="0">
      <div class="AccordionPanel">
        <div class="AccordionPanelTab">Label 1</div>
        <div class="AccordionPanelContent">Content 1</div>
      </div>
      <div class="AccordionPanel">
        <div class="AccordionPanelTab">Label 2</div>
        <div class="AccordionPanelContent">Content 2</div>
      </div>
    </div>
    <script type="text/javascript">
    <!--
    var Accordion1 = new Spry.Widget.Accordion("Accordion1");
    //-->
    </script>
    </body>
    </html>

    Your best bet regarding that particular "error" (tabindex exists but cannot be used for this element) is to remove the tabindex attribute and value from your markup.
    Unless you have a good reason to have it there, it is basically nonfunctioning. There are probably other ways to set a tab order, but typically, accessibility indicates that you should set up your page (code) in the order that you would like it 'read' by screen readers. Then it will naturally tab from form element to form element in order.
    Beth

  • Why does my spry accordian look good in live view and switch back to default in safari

    i am new to dreamweaver and have started my first page-
    step one inserted a picture as a background
    step 2 inserted a spry accordian and have spent hours trying to configure it - my dreamweaver wont allow me to type any information in the design view so i worked out how to get around that in the code - so i put in the labels - changed the font
    then i got rid of any color by adding the hex value #0.0 (transparent) in the spryaccordian.css page  - which has worked really well in the live view ( and works in opera) but when i check it in safari it has reverted back to the default settings - it hasnt even kept the font settings
    i would also like to put quite a lot of information in the content panels (pictures, subscriber list, links ect, essentially whole pages) is this possible
    hoping someone can help me
    kind regards
    mandy evans

    Have a look at the following, just copy and paste into a new document in code view.
    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="utf-8">
    <title>Untitled Document</title>
    <script src="SpryAssets/SpryAccordion.js" type="text/javascript"></script>
    <link href="SpryAssets/SpryAccordion.css" rel="stylesheet" type="text/css">
    <style>
    html {
        background-color: #FF9;
    body {
        width: 960px;
        margin: auto;
    .Accordion {
        font: 14px "Comic Sans MS", cursive;
        color: #090;
    .AccordionPanelTab,
    .AccordionPanelOpen .AccordionPanelTab,
    .AccordionFocused .AccordionPanelTab,
    .AccordionFocused .AccordionPanelOpen .AccordionPanelTab {
        background-color: transparent;
    </style>
    </head>
    <body>
    <div id="Accordion1" class="Accordion" tabindex="0">
      <div class="AccordionPanel">
        <div class="AccordionPanelTab">Label 1</div>
        <div class="AccordionPanelContent">Content 1</div>
      </div>
      <div class="AccordionPanel">
        <div class="AccordionPanelTab">Label 2</div>
        <div class="AccordionPanelContent">Content 2</div>
      </div>
    </div>
    <script type="text/javascript">
    var Accordion1 = new Spry.Widget.Accordion("Accordion1");
    </script>
    </body>
    </html>
    Gramps

  • How do i link to a specific tab using the spry tabbed widget

    Hello i'm working on a microsite using the spry tabbed widget. I'm having trouble figuring out how to link to a specific tab using a an external link.
    here is the site. http://www.efaxcorporate.co.uk
    for example: if i wanted to give a user a url link specifically tab#2.
    Im sure this is really easy i just can't seem to figure it out.

    Try http://foundationphp.com/tutorials/spry_url_utils.php

  • Help with Spry Rating Widget within a Spry Repeating Region

    My link  http://www.youthinkyougotitbad.com
    This is a long question, but it seems to me if answered somewhere it could help alot of people in the spry community creating comment boards as it uses three important spry widgets: rating, repeating, and tabbed panels. I am trying to use spry rating widget within a spry repeating region within a spry tabbed panel with xml. I was trying to go with the pulse light script (http://forums.adobe.com/message/3831721#3831721) but Gramps told me about the spry rating widget. But I have ran into a couple more problems. First, I couldnt find that much information on the forums or online about how to do the php page with the spry rating widget. None of these have any information on how to do it:
    http://labs.adobe.com/technologies/spry/articles/rating_overview/index .html
    http://labs.adobe.com/technologies/spry/articles/data_api/apis/rating. html
    http://labs.adobe.com/technologies/spry/samples/rating/RatingSample.ht ml
    And it seems that the official examples are so poor (or I am just ignorant, which def could be a possiblity) it shows
    to set the initial rating value from the server, but uses a static value of 4
    http://labs.adobe.com/technologies/spry/samples/rating/RatingSample.html
    <span id="initialValue_dynamic" class="ratingContainer">
             <span class="ratingButton"></span>
             <span class="ratingButton"></span>
             <span class="ratingButton"></span>
             <span class="ratingButton"></span>
             <span class="ratingButton"></span>      
             <input id="spryrating1_val" type="text" name="spryrating1" value="4" readonly="readonly" />
             <span class="ratingRatedMsg sample">Thanks for your rating!</span>
    </span>
    <script>
    var initialValue_dynamic = new Spry.Widget.Rating("initialValue_dynamic", {ratingValueElement:'spryrating1_val'});
    </script>
    I finally found a site that has the php and mysql setup.
    http://www.pixelplant.ro/en/articles/article-detail/article/adobe-widgets-for-download.htm l
    But its not perfect. It has the same problem that I ran into with Pulse light, that you had to use php echo within the spry repeating region to set the initial value from the server:
    <span id="spryrating1" class="ratingContainer">
             <span class="ratingButton"></span>
                <input type="text" id="ratingValue" name="dynamic_rate" value="<?php echo $row['average']?>"/>
            </span>
            <script type="text/javascript"
                var rating1 = new Spry.Widget.Rating("spryrating1", {ratingValueElement:'ratingValue', afterRating:'serverValue', saveUrl: 'save.php?id=spryrating1&val=@@ratingValue@@'});
            </script>
    So instead, I tried with three of my panels (www.youthinkyougotitbad.com) to get the average rating from xml by using the following queries:
    Recent
    Returns the blurts in most recent order along with average rating
    SELECT Blurt.Id_blurt, Blurt.Name, Blurt.Location, Blurt.Blurt,Blurt.`Date`,DATE_FORMAT(Blurt.`Date`, '%l:%i %p on %M %D, %Y') as Date, ratings.rating_id, Avg(ratings.rating_value) as average_r FROM ratings Left Join Blurt On ratings.rating_id = Blurt.Id_blurt Group By Id_blurt ORDER BY Blurt.`Date` DESC
    Wet Eyed
    Returns the blurts in highest ratings order along with the average rating
    SELECT Blurt.Id_blurt, Blurt.Name, Blurt.Location, Blurt.Blurt, DATE_FORMAT(Blurt.`Date`, '%l:%i %p on %M %D, %Y') as Date, ratings.rating_id, Avg(ratings.rating_value) as average_r FROM ratings Left Join Blurt On ratings.rating_id = Blurt.Id_blurt AND ratings.rating_value > 0.1 Group By Id_blurt ORDER BY average_r Desc
    Dry Eyed
    Returns the blurts in lowest rating order along with the average rating
    SELECT Blurt.Id_blurt, Blurt.Name, Blurt.Location, Blurt.Blurt, DATE_FORMAT(Blurt.`Date`, '%l:%i %p on %M %D, %Y') as Date, ratings.rating_id, Avg(ratings.rating_value) as average_r FROM ratings Left Join Blurt On ratings.rating_id = Blurt.Id_blurt AND ratings.rating_value > 0.1 Group By Id_blurt ORDER BY average_r
    These all return the correct xml in the correct order.And they return the average rating of each blurt which I can send to my page with xml.
    My first question is that I dont know how to configure the query on my fourth panel Empathized & Advised the same way because it already has a Group By for the Comment Id.
    SELECT `Comment`.id_Blurt, COUNT(*) as frequency, Blurt.Id_blurt, Blurt.Name, Blurt.Location, Blurt.Blurt, DATE_FORMAT(Blurt.`Date`, '%l:%i %p on %M %D, %Y') as Date FROM Blurt, `Comment` WHERE Blurt.Id_blurt = `Comment`.id_Blurt GROUP BY `Comment`.id_Blurt ORDER BY COUNT(*) DESC";
    Not sure if you guys need more information to understand that all, if so just ask.
    So after I get my average value through xml to the first three panels, I set my spry repeating region up like this:
    (Blurt panel)
    <div spry:region="pv1" spry:repeatchildren="pv1">           
               <div class="blurtbox">
                <!--  most recent blurt tab-->
                <h3> "{pv1::Blurt}"</h3>
                <p> Blurted from {pv1::Location} at {pv1::Date}</p>
                <p>Empathize or Advise about {pv1::Name}'s Blurt #<a href="detailblurt.php?blurtid={pv1::Id_blurt}"> {pv1::Id_blurt}</a></a></p>
               <span id="{pv1::Id_blurt}" class="ratingContainer">
                <span class="ratingButton"></span>
                <span class="ratingButton"></span>
                <span class="ratingButton"></span>
                <span class="ratingButton"></span>
                <span class="ratingButton"></span>
                <span class="ratingRatedMsg">Thank You! Your tears have been tallied.</span>
                <input type="text" id="ratingValue" name="dynamic_rate" value="{pv1::average_r}"/>
            </span>
            <script type="text/javascript">
                // overview of available options and their values:
                // http://labs.adobe.com/technologies/spry/articles/rating_overview/index.html
                var rating1 = new Spry.Widget.Rating("{pv1::Id_blurt}", {ratingValueElement:'ratingValue', afterRating:'serverValue', saveUrl: 'save.php?id={pv1::Id_blurt}&val=@@ratingValue@@'});
            </script>
                 <br/>
               </div>
              </div>
    Ok, it registers the right vote in the database with the right blurt id each time. But I am having two problems so far:
    One, even though {pv1::average_r} returns the correct average through xml, it doesn't show the initial rating value for each of the repeating blurts. It seems to show the first one correct, and then just repeat that same value to the other ones that follow. I just dont understand since it can get the correct server value right after you vote (afterRating:'serverValue), that I can't manipulate spryrating.js in some way that I could just replace 'ratingValue' in ratingValueElement:'ratingValue' with something to give me the initial server value.
    Two: Is even more mysterious to me, if you play around with voting on the site, sometimes you are unable to vote on different blurts. Its weird. It seems like that the javascript is completely off just on those blurts. And sometimes its a whole row, sometimes none. But so far its never a problem on the first tabbed panel (Recent), only on the other three. As far as I know, the coding is exactly the same in each tab's repeating region except for the different xml input.
    And, now on the live server, sometimes the pics of tears used to voting dont show up until you click.
    Any help on those three questions (how to query the fourth panel, how to show the initial server value, and the glitches with voting) would be greatly appreciated!! I looked pretty hard on adobe forums and other sites, and didnt see much on how to really use the spry rating widget with php and xml.
    Thanks!!

    Update:
    Ok, the first query on the Recent tab doesnt work for me because it wont show unless its already voted, and since these are supposed to be new blurts, that kind of breaks the whole site:
    "SELECT Blurt.Id_blurt, Blurt.Name, Blurt.Location, Blurt.Blurt,Blurt.`Date`,DATE_FORMAT(Blurt.`Date`, '%l:%i %p on %M %D, %Y') as Date, ratings.rating_id, Avg(ratings.rating_value) as average_r FROM ratings Left Join Blurt On ratings.rating_id = Blurt.Id_blurt Group By Id_blurt ORDER BY Blurt.`Date` DESC";
    So I replaced it with what I originally had.
    "SELECT Blurt.Id_blurt, Blurt.Name, Blurt.Location, Blurt.Blurt,Blurt.`Date`,DATE_FORMAT(Blurt.`Date`, '%l:%i %p on %M %D, %Y') as Date FROM Blurt ORDER BY Blurt.`Date` DESC";
    But this doesn't provide me with the initial average rating:(

  • Spry Validation widgets not working on local WAMP server

    I just started the process of creating a contact page. I got the client side done last night, woke up this morning and panicked. The spry validation widgets weren't working anymore. I re-did the entire page and realized it was only the contact.html page in the wamp directory that wasn't working. All the needed CSS and javascript assets are there and in the proper folders, so what's up?
    (I'm still in the middle of the lynda.com series Dreamweaver CS5 with PHP and MySQL , so I'm not even certain where I'm heading just yet. I'm doing stuff as I think I understand it.)

    OK, this is interesting. It works online, but not in local cache.
    Here's the contact page on my website: http://www.ladyhawkslair.com/contact.html (So far, GNDN: goes nowhere; does nothing.)
    And here's the WAMP version: http://www.ladyhawkslair.com/wamp/contact.html
    worky-worky online.
    No worky-worky when I preview in Firefox on my system.
    Wait. Hold that thought.
    I only refuses to work when I preview it in Firefox THROUGH Dreamweaver. Let me test again.
    Verified.
    The spry widgets don't work when I load them to Firefox WITH Dreamweaver. Interestingly, it works with IE.
    Any ideas, Gramps?

  • Spry Accordian not working

    I've been trying to add 3 collapsible areas on a web page I'm developing with the Spry Accordion widget while using CS4 and I can't get them to close by default when the browser opens. When I open IE8 or Firefox you can see the entire content and when I click on the tabs they won't collapse. I've tried using the help section http://labs.adobe.com/technologies/spry/articles/collapse_panel/ but can't seem to get anything to work - not sure if I should be following it since it was created back in 2006.
    I've done some other reading on this site and I'm using the updated JS file 1.6.1 and changed the default panel to -1 (this.defaultPanel = -1;) in the SpryAccordion.js file and they now close in Firefox but won't open when the tab is clicked. Changing the default panel did not change anything in IE.
    Can someone please help since I'm a novice at this? I've added the section of Accordion code I'm using on the page if it helps.
    Thanks
    Swany
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Untitled Document</title>
    <script type="text/javascript" src="SpryAssets/SpryAccordion.js"></script>
    <script type="text/javascript" src="SpryAssets/SpryCollapsiblePanel.js"></script>
    <script type="text/javascript" src="SpryAssets/SpryTabbedPanels.js"></script>
    <link href="SpryAssets/SpryAccordion.css" rel="stylesheet" type="text/css" />
    <link href="SpryAssets/SpryTabbedPanels.css" rel="stylesheet" type="text/css" />
    <link href="SpryAssets/SpryCollapsiblePanel.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
    <!--Create the Collapsible Panel widget and assign classes to each element-->
    <div id="Accordion1" class="Accordion">
      <div class="AccordionPanel">
        <div class="AccordionPanelTab">What Information Do We Collect</div>
        <div class="AccordionPanelContent"><p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Duis ligula lorem, consequat eget, tristique nec, auctor quis, purus. Vivamus ut sem.</ p>
        </div>
          </div>
    <div id="Accordion2" class="Accordion">
      <div class="AccordionPanel">
        <div class="AccordionPanelTab">Personal Information You Choose to Provide</div>
        <div class="AccordionPanelContent"><p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Duis ligula lorem, consequat eget, tristique nec, auctor quis, purus. Vivamus ut sem. </p></div>
      </div>
        </div>
      <div id="Accordion3" class="Accordion">
        <div class="AccordionPanel">
          <div class="AccordionPanelTab">Website Use Information</div>
          <div class="AccordionPanelContent"><p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Duis ligula lorem, consequat eget, tristique nec, auctor quis, purus. Vivamus ut sem.</p></div>
    </div>
      </div>
    <!--Initialize the Collapsible Panel widget object-->
    <script type="text/javascript">
    var Accordion1 = new Spry.Widget.Accordion("Accordion1", { contentIsOpen: false });
    var Accordion2 = new Spry.Widget.Accordion("Accordion2", { contentIsOpen: false });
    var Accordion3 = new Spry.Widget.Accordion("Accordion3", { contentIsOpen: false });
    </script>
    </div></body></html>

    AG, I removed all the accordion code and reworked the page with the collapsible content code but still having the same problem. There must be something I'm missing but I can't find it. When I added it I used the Insert menu for Spry Collapsible Panel in Dreamweaver if that helps.
    Below is the new code.
    Thanks again.
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Privacy Policy</title>
    <link type="text/css" rel="stylesheet" href="styles.css" />
    <script src="SpryAssets/SpryCollapsiblePanel.js" type="text/javascript"></script>
    <link href="SpryAssets/SpryCollapsiblePanel.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
    <div id="CollapsiblePanel1" class="CollapsiblePanel">
      <div class="CollapsiblePanelTab">What Information Do We Collect</div>
      <div class="CollapsiblePanelContent"> When you visit this website you may provide us with two types of information: personal information you knowingly choose to disclose that is collected on an individual basis and website use information collected on an aggregate basis as you and others browse our website.</div>
    </div>
    <div id="CollapsiblePanel2" class="CollapsiblePanel">
      <div class="CollapsiblePanelTab">Personal Information You Choose to Provide</div>
      <div class="CollapsiblePanelContent">If you choose to correspond with us we may retain the content of your  messages together with your email address and our responses. We provide the same protections for these electronic communications that we employ in the maintenance of information received by mail and  telephone.</div>
    </div>
    <div id="CollapsiblePanel3" class="CollapsiblePanel">
      <div class="CollapsiblePanelTab">Website Use Information</div>
      <div class="CollapsiblePanelContent"><strong>Sharing and Selling Information</strong><br />
    We do not share, sell, lend or lease any of the information that uniquely identify a subscriber (such as email addresses or personal details) with anyone except to the extent it is necessary to process transactions or provide services that you have requested.
    <p><strong>How Can You Access and Correct Your Information?</strong><br />
    You may request access to all your personally identifiable information that we collect online and maintain in our database by emailing us at the usual address.</p>
    <p><strong>What About Legally Compelled Disclosure of Information?<br />
    </strong>We may disclose information when legally compelled to do so, in other words, when we, in good faith, believe that the law requires it or for the protection of our legal rights. We may also disclose account information when we have reason to believe that
    disclosing this information is necessary to identify, contact or bring legal action against someone who may be violating our Terms of Service or to protect the safety of our users and the Public.</p>
    <p><strong>What About Other Website's Linked to Our Website?</strong><br />
    We are not responsible for the practices employed by website's linked to or from our website or the information or content contained therein. Often links to other website's are provided solely as pointers to information on topics that may be useful to the users of our website.</p>
    <p>Please remember that when you use a link to go from our Website to another website, our Privacy Policy is no longer in effect. Your browsing and interaction on any other website, including website's, which have a link on our Website, is subject to that website's own rules and policies. Please read over those rules and policies before proceeding.
    </p><p><strong>Your Consent</strong><br />By using our website you consent to our collection and use of your personal
    information as described in this Privacy Policy. We reserve the right to amend this privacy policy at any time with
    or without notice.</p>
    <p><strong>Our Commitment To Data Security</strong><br />Please note that your information will be stored and processed on our computers in the United States. The laws on holding personal data in the United States may be less stringent than the laws of your Country of residence or citizenship.To prevent unauthorized
    access, maintain data accuracy, and ensure the correct use of information, we have put in place appropriate physical, electronic, and managerial procedures to safeguard and secure the information we collect online.</p>
    <p><strong>A Special Note About Children</strong><br />
    Children are not eligible to use our services unsupervised and we ask that children(under the age of 14) do not submit any personal information to us. If you are a minor, you can use this service only in conjunction with permission and guidance from your parents or guardians.</p>
    <p><strong>Acquisition or Changes in Ownership</strong><br />
    In the event that the website (or a substantial portion of its assets) is acquired, your information would be considered part of those assets, and may be part of those assets that are transferred.</p>
    <p><strong>Policy Modifications<br /></strong>
    We may change this Privacy Policy from time to time. If/when changes are made to this privacy policy, we will email users who have given us permission to do so. We will post any changes here, so be sure to check back periodically. However, please be assured that if the Privacy Policy changes in the future, we will not use the personal information you have submitted to us under this Privacy Policy in a manner that is materially inconsistent with this Privacy Policy, without your prior consent.</p></div>
    </div>
    <script language="JavaScript" type="text/javascript">
    swfobject.registerObject("FlashID");
    <!--Initialize the Collapsible Panel widget object-->
    var CollapsiblePanel1 = new Spry.Widget.CollapsiblePanel("CollapsiblePanel1", { contentIsOpen: false });
    var CollapsiblePanel2 = new Spry.Widget.CollapsiblePanel("CollapsiblePanel2", { contentIsOpen: false });
    var CollapsiblePanel3 = new Spry.Widget.CollapsiblePanel("CollapsiblePanel3", { contentIsOpen: false });
    </script>
    </body>
    </html>

  • Spry Accordian with dynamic panels from XML

    Hi. I've searched, but haven't seen anybody answer this yet.
    I'm trying to build a page that uses a spry accordian to display
    data by category. So category 1 is on panel 1 in a spry table with
    a link to a spry detail section on the page. Category 2 is on panel
    2 in a spry table with a link to the same spry detail section, etc.
    I have 2 issues: 1) I haven't figured out how to filter a
    single XML data set onto different accordian panels or
    2) how to get the same detail region to take links from
    different XML data sets on the different panels.
    Any help that anybody could give would be VERY much
    appreciated.
    THANKS!

    I did get it working. Please check out..
    http://www.adobe.com/cfusion/webforums/forum/messageview.cfm?catid=602&threadid=1334877
    The key is the Data Set Shell. I use multiple data sets for
    each category, in your case department. Then I list the items in
    that category to update a detail region. If the above link doesn't
    help you please re-post and I can give you some more help.

  • SPRY accordion widget IE8 ONLY issue

    hello everybody,
    i noticed a strange "jumpy" behavior while using the spry accordion widget -- this affects IE8 only (currently using 8.0.6001.18882 on vista), other browsers (including IE7 and IE8 forced into IE7 mode) work as expected. this issue seems to be related to the margin property of the accordion container...
    not shure whether this behavior is related to IE rendering or the spry javascript code itself... anyway i made NO changes to the spry script (my version is 0.15, 1.6.1, which i believe to be most recent one).
    the xhtml (strict) and css are perfectly valid (there might be some MINOR css hacks which are not related to the accordion itself). i do NOT use ANY padding on the inner container of the accordion (which would definetely make the spry js count the tween in odd way). the accordions (especially the main menu on the left) are little more complex, but they were built according to the spry widget document, found on the adobe spry website.
    so, here it is -- check the accordion on the left side (the bug seems to happen almost always while opening/closing the last BLUE "section" of the accordion, please play with the accordion for a while to reproduce it -- while the accordion closes, it "loses" it's bottom margin (i guess), what's even more wierd, everything gets back to place after you move a mouse):
    http://www.prazskematky.cz/home.php
    PLEASE NOTICE: since the website is still under development and i'm using a IE meta tag to force it into IE7 rendering, to reproduce this behavior please be shure to switch IE engine to IE8 standards mode
    well, we all now how IE handles css... so it's propably an IE bug -- anyway if you have encountered a similar issue of even better found a fix, please let know. (i don't consider a fix switching to another js library, i would like to use the spry, because of it's DW integration)
    many thanks,
    p.s.

    ross m. greenberg wrote:
    > Now however the entire .gif is not appearing in the
    accordion panel is expanded. I insert the graphic using a standard
    "menu insert/graphic/browse and select"
    >
    > the graphic file is not showing up properly on such an
    insert...
    Are you referring to what it looks like in Design view? If
    so, that's
    correct. Accordion panels have a fixed height. From memory, I
    think it's
    200px. However, if you test the page in a browser, you should
    see a
    scrollbar automatically generated on panels that have content
    that
    exceeds the height of the panel.
    If you want flexible-height panels in the accordion, you need
    to adjust
    both the CSS and the script that initializes the accordion. I
    have
    covered all the details in my "Essential Guide to Dreamweaver
    CS3" (and
    the forthcoming CS4 edition). You can probably find online
    tutorials as
    well. Try a Google search for Spry flexible height accordion.
    The accordion widget has been around since CS3, and it hasn't
    changed in
    CS4, so a Google search should bring up a lot of information.
    David Powers, Adobe Community Expert
    Author, "The Essential Guide to Dreamweaver CS3" (friends of
    ED)
    Author, "PHP Solutions" (friends of ED)
    http://foundationphp.com/

Maybe you are looking for

  • Some tunes don't play in airport express

    A few of the tunes in my play list show a little display icon. Although most of of the tunes play just fine through my airport express, the ones with the display icon switch back to my computer for sound???? frank

  • How can I get extensions to load in a Microsoft App-V environment?

    I am trying to install Firefox 25.0.1 as a virtual application through Microsoft App-V. Everything works fine, until I attempt to install an extension. The extension installs, I can see it in the list of installed extensions, and I see the *.xpi file

  • MOVED: A75MA-G55 UEFI boot entries disappear

    This topic has been moved to Linux/Unix. https://forum-en.msi.com/index.php?topic=153411.0

  • Trying to install software!!!!

    As soon as I put the disk in the slot drive it pops right back out!!! Can anyone help?! Why is it doing this and how can I make it stop and begin the install???!!!!!

  • Changing the Device Name

    My daughter gave me her old nano. When I plug it in to my computer, it says the device is "Karens ipod". It has her songs on the ipod. How do I get this Ipod to say "Puhs idpod" and to get rid of her name?