Tabbed Panels Show on Hover, Not Click

Hi,
I'm using the Spry Tabbed Panels widget (obviously). I'd like
the content panels to show on hover, rather than on click.
Reason being is my content in the content panels are images
-- as you hover over a tab, the image changes. Clicking on the tab
takes you to the tab's page. That's the end goal, at least.
The answer's in the SpryTabbedPanels.js file, I'm positive.
All my tinkering hasn't produced the desired result, though. Spare
a few minutes and direct me to the sections of the javascript file
I need to change?
var Spry;
if (!Spry) Spry = {};
if (!Spry.Widget) Spry.Widget = {};
Spry.Widget.TabbedPanels = function(element, opts)
this.element = this.getElement(element);
this.defaultTab = 0; // Show the first panel by default.
this.bindings = [];
this.tabSelectedClass = "TabbedPanelsTabSelected";
this.tabHoverClass = "TabbedPanelsTabHover";
this.tabFocusedClass = "TabbedPanelsTabFocused";
this.panelVisibleClass = "TabbedPanelsContentVisible";
this.focusElement = null;
this.hasFocus = false;
this.currentTabIndex = 0;
this.enableKeyboardNavigation = true;
Spry.Widget.TabbedPanels.setOptions(this, opts);
// If the defaultTab is expressed as a number/index, convert
// it to an element.
if (typeof (this.defaultTab) == "number")
if (this.defaultTab < 0)
this.defaultTab = 0;
else
var count = this.getTabbedPanelCount();
if (this.defaultTab >= count)
this.defaultTab = (count > 1) ? (count - 1) : 0;
this.defaultTab = this.getTabs()[this.defaultTab];
// The defaultTab property is supposed to be the tab element
for the tab content
// to show by default. The caller is allowed to pass in the
element itself or the
// element's id, so we need to convert the current value to
an element if necessary.
if (this.defaultTab)
this.defaultTab = this.getElement(this.defaultTab);
this.attachBehaviors();
Spry.Widget.TabbedPanels.prototype.getElement = function(ele)
if (ele && typeof ele == "string")
return document.getElementById(ele);
return ele;
Spry.Widget.TabbedPanels.prototype.getElementChildren =
function(element)
var children = [];
var child = element.firstChild;
while (child)
if (child.nodeType == 1 /* Node.ELEMENT_NODE */)
children.push(child);
child = child.nextSibling;
return children;
Spry.Widget.TabbedPanels.prototype.addClassName =
function(ele, className)
if (!ele || !className || (ele.className &&
ele.className.search(new RegExp("\\b" + className + "\\b")) != -1))
return;
ele.className += (ele.className ? " " : "") + className;
Spry.Widget.TabbedPanels.prototype.removeClassName =
function(ele, className)
if (!ele || !className || (ele.className &&
ele.className.search(new RegExp("\\b" + className + "\\b")) == -1))
return;
ele.className = ele.className.replace(new RegExp("\\s*\\b" +
className + "\\b", "g"), "");
Spry.Widget.TabbedPanels.setOptions = function(obj,
optionsObj, ignoreUndefinedProps)
if (!optionsObj)
return;
for (var optionName in optionsObj)
if (ignoreUndefinedProps && optionsObj[optionName]
== undefined)
continue;
obj[optionName] = optionsObj[optionName];
Spry.Widget.TabbedPanels.prototype.getTabGroup = function()
if (this.element)
var children = this.getElementChildren(this.element);
if (children.length)
return children[0];
return null;
Spry.Widget.TabbedPanels.prototype.getTabs = function()
var tabs = [];
var tg = this.getTabGroup();
if (tg)
tabs = this.getElementChildren(tg);
return tabs;
Spry.Widget.TabbedPanels.prototype.getContentPanelGroup =
function()
if (this.element)
var children = this.getElementChildren(this.element);
if (children.length > 1)
return children[1];
return null;
Spry.Widget.TabbedPanels.prototype.getContentPanels =
function()
var panels = [];
var pg = this.getContentPanelGroup();
if (pg)
panels = this.getElementChildren(pg);
return panels;
Spry.Widget.TabbedPanels.prototype.getIndex = function(ele,
arr)
ele = this.getElement(ele);
if (ele && arr && arr.length)
for (var i = 0; i < arr.length; i++)
if (ele == arr
return i;
return -1;
Spry.Widget.TabbedPanels.prototype.getTabIndex =
function(ele)
var i = this.getIndex(ele, this.getTabs());
if (i < 0)
i = this.getIndex(ele, this.getContentPanels());
return i;
Spry.Widget.TabbedPanels.prototype.getCurrentTabIndex =
function()
return this.currentTabIndex;
Spry.Widget.TabbedPanels.prototype.getTabbedPanelCount =
function(ele)
return Math.min(this.getTabs().length,
this.getContentPanels().length);
Spry.Widget.TabbedPanels.addEventListener = function(element,
eventType, handler, capture)
try
if (element.addEventListener)
element.addEventListener(eventType, handler, capture);
else if (element.attachEvent)
element.attachEvent("on" + eventType, handler);
catch (e) {}
Spry.Widget.TabbedPanels.prototype.onTabClick = function(e,
tab)
this.showPanel(tab);
Spry.Widget.TabbedPanels.prototype.onTabMouseOver =
function(e, tab)
this.addClassName(tab, this.tabHoverClass);
Spry.Widget.TabbedPanels.prototype.onTabMouseOut =
function(e, tab)
this.removeClassName(tab, this.tabHoverClass);
Spry.Widget.TabbedPanels.prototype.onTabFocus = function(e,
tab)
this.hasFocus = true;
this.addClassName(this.element, this.tabFocusedClass);
Spry.Widget.TabbedPanels.prototype.onTabBlur = function(e,
tab)
this.hasFocus = false;
this.removeClassName(this.element, this.tabFocusedClass);
Spry.Widget.TabbedPanels.ENTER_KEY = 13;
Spry.Widget.TabbedPanels.SPACE_KEY = 32;
Spry.Widget.TabbedPanels.prototype.onTabKeyDown = function(e,
tab)
var key = e.keyCode;
if (!this.hasFocus || (key !=
Spry.Widget.TabbedPanels.ENTER_KEY && key !=
Spry.Widget.TabbedPanels.SPACE_KEY))
return true;
this.showPanel(tab);
if (e.stopPropagation)
e.stopPropagation();
if (e.preventDefault)
e.preventDefault();
return false;
Spry.Widget.TabbedPanels.prototype.preorderTraversal =
function(root, func)
var stopTraversal = false;
if (root)
stopTraversal = func(root);
if (root.hasChildNodes())
var child = root.firstChild;
while (!stopTraversal && child)
stopTraversal = this.preorderTraversal(child, func);
try { child = child.nextSibling; } catch (e) { child = null;
return stopTraversal;
Spry.Widget.TabbedPanels.prototype.addPanelEventListeners =
function(tab, panel)
var self = this;
Spry.Widget.TabbedPanels.addEventListener(tab, "click",
function(e) { return self.onTabClick(e, tab); }, false);
Spry.Widget.TabbedPanels.addEventListener(tab, "mouseover",
function(e) { return self.onTabMouseOver(e, tab); }, false);
Spry.Widget.TabbedPanels.addEventListener(tab, "mouseout",
function(e) { return self.onTabMouseOut(e, tab); }, false);
if (this.enableKeyboardNavigation)
// XXX: IE doesn't allow the setting of tabindex
dynamically. This means we can't
// rely on adding the tabindex attribute if it is missing to
enable keyboard navigation
// by default.
// Find the first element within the tab container that has
a tabindex or the first
// anchor tag.
var tabIndexEle = null;
var tabAnchorEle = null;
this.preorderTraversal(tab, function(node) {
if (node.nodeType == 1 /* NODE.ELEMENT_NODE */)
var tabIndexAttr = tab.attributes.getNamedItem("tabindex");
if (tabIndexAttr)
tabIndexEle = node;
return true;
if (!tabAnchorEle && node.nodeName.toLowerCase() ==
"a")
tabAnchorEle = node;
return false;
if (tabIndexEle)
this.focusElement = tabIndexEle;
else if (tabAnchorEle)
this.focusElement = tabAnchorEle;
if (this.focusElement)
Spry.Widget.TabbedPanels.addEventListener(this.focusElement,
"focus", function(e) { return self.onTabFocus(e, tab); }, false);
Spry.Widget.TabbedPanels.addEventListener(this.focusElement,
"blur", function(e) { return self.onTabBlur(e, tab); }, false);
Spry.Widget.TabbedPanels.addEventListener(this.focusElement,
"keydown", function(e) { return self.onTabKeyDown(e, tab); },
false);
Spry.Widget.TabbedPanels.prototype.showPanel =
function(elementOrIndex)
var tpIndex = -1;
if (typeof elementOrIndex == "number")
tpIndex = elementOrIndex;
else // Must be the element for the tab or content panel.
tpIndex = this.getTabIndex(elementOrIndex);
if (!tpIndex < 0 || tpIndex >=
this.getTabbedPanelCount())
return;
var tabs = this.getTabs();
var panels = this.getContentPanels();
var numTabbedPanels = Math.max(tabs.length, panels.length);
for (var i = 0; i < numTabbedPanels; i++)
if (i != tpIndex)
if (tabs)
this.removeClassName(tabs
, this.tabSelectedClass);
if (panels)
this.removeClassName(panels
, this.panelVisibleClass);
panels.style.display = "none";
this.addClassName(tabs[tpIndex], this.tabSelectedClass);
this.addClassName(panels[tpIndex], this.panelVisibleClass);
panels[tpIndex].style.display = "block";
this.currentTabIndex = tpIndex;
Spry.Widget.TabbedPanels.prototype.attachBehaviors =
function(element)
var tabs = this.getTabs();
var panels = this.getContentPanels();
var panelCount = this.getTabbedPanelCount();
for (var i = 0; i < panelCount; i++)
this.addPanelEventListeners(tabs
, panels);
this.showPanel(this.defaultTab);

near line 282 u will see the function:
Spry.Widget.TabbedPanels.prototype.addPanelEventListeners =
function(tab, panel)
in there u will find
Spry.Widget.TabbedPanels.addEventListener(tab, "click",
function(e) { return self.onTabClick(e, tab); }, false);
Spry.Widget.TabbedPanels.addEventListener(tab, "mouseover",
function(e) { return self.onTabMouseOver(e, tab); }, false);
change this to:
Spry.Widget.TabbedPanels.addEventListener(tab, "mouseover",
function(e) { self.onTabClick(e, tab);return self.onTabMouseOver(e,
tab); }, false);
and it should work.

Similar Messages

  • Spry tabbed panels - question about hover

    Hello, I am relatively new to Dreamweaver and Spry, but have made a website using vertical Tabbed Panels that finally looks ALMOST like I want it. I am sure that I have done some things that could be much simpler though…
    http://web.me.com/marinka9170/JL_test/JL_test.html
    My problem is that I would like the tabs to stay in their hover state (so coloured and wider) when you navigate to the content panel (until you hover over the next tab of course), instead of going back to their standard grey. How do I do that?
    And my other question is: in the content panels I have used custom bullets. Is there a way to assign a different custom bullet for each content panel? Do I number the content panels, like I have done with the tabs?
    Any hints, tips, solutions are appreciated!
    Thanks,
    Marinka

    I indeed see that your example works, but I think in my code there is some sort of conflict going on
    I have copied the Source Code and the SpryTabbedPanels.ccs below and 'bolded' the parts where I think the problem is. It is probably in splitting the different tabs in 5, right?
    I am sorry for asking these stupid questions. It's all quite new to me, but I've ordered a book to study more. It's just not in yet
    Thanks again for your help! Really appreciate it!
    Marinka
    <!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" />
    <meta name="description" content="description goes here">
    <meta name="keywords" content="">
    <meta name="author" content="metatags generator">
    <meta name="robots" content="index, follow">
    <meta name="revisit-after" content="3 month">
    <title>JL_test</title>
    <style type="text/css">
    <!--
    body {
    font: 12px/17px Verdana, Arial, Helvetica, sans-serif;
    background: #FFF;
    color: #000;
    .TabbedPanelsTab1:hover {
    background-color: #15375E
    .TabbedPanelsTab2:hover {
    background-color: #016596
    .TabbedPanelsTab3:hover {
    background-color: #00A0AF
    .TabbedPanelsTab4:hover {
    background-color: #679145
    .TabbedPanelsTab5:hover {
    background-color: #B4D88B
    .TabbedPanelsContent ul#tab1 {
    list-style-image: url(Website_03-web-images/bullet1.png)
    .TabbedPanelsContent ul#tab2 {
         list-style-image: url(Website_03-web-images/bullet2.png)
    .TabbedPanelsContent ul#tab3 {
         list-style-image: url(Website_03-web-images/bullet3.png)
    .TabbedPanelsContent ul#tab4 {
         list-style-image: url(Website_03-web-images/bullet4.png)
    .TabbedPanelsContent ul#tab5 {
         list-style-image: url(Website_03-web-images/bullet5.png)
    ul {
    padding: 0;
    margin: 0;
    ol, dl, ul {
    padding-right: 15px;
    padding-left: 5px;
    margin: 0 0 0 15px;
    list-style-type: none;
    list-style-position: outside;
    text-indent: 0px;
    h1, h2, h3, h4, h5, h6 {
    margin: 0;
    line-height: 17px;
    p {
    margin: 0;
    line-height: 17px;
    padding-right: 15px;
    a img {
    border: none;
    a:link {
    color: #b4d88b;
    text-decoration: none;
    a:visited {
    text-decoration: none;
    a:hover, a:active, a:focus {
    text-decoration: none;
    color: #016596;
    .container {
    width: 1024px;
    background: #FFFFFF;
    margin: 0 auto;
    .content {
    background: #FFFFFF;
    clear: both;
    height: 200px;
    margin-top: 50px;
    .header {
    background: #FFF;
    width: 1024px;
    height: 120px;
    .column1 {
    float: left;
    width: 338px;
    background: #15375E;
    height: 20px;
    .column2 {
    width: 348px;
    float: left;
    background: #016596;
    height: 20px;
    .column3 {
    float: left;
    width: 338px;
    background: #679245;
    height: 20px;
    .placeholder {
    width: 1024px;
    height: 400px;
    clear: both;
    .footer {
    padding: 0px;
    background: #FFF;
    position: relative;
    clear: both;
    width: 280px;
    text-align: right;
    .fltrt {
    float: right;
    margin-left: 8px;
    .fltlft {
    float: left;
    margin-right: 8px;
    .clearfloat {
    clear: both;
    height: 0;
    font-size: 1px;
    line-height: 0px;
    -->
    </style>
    <script src="SpryAssets/SpryTabbedPanels.js" type="text/javascript"></script>
    <link href="SpryAssets/SpryTabbedPanels.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript">
    function MM_callJS(jsStr) { //v2.0
      return eval(jsStr)
    </script>
    <style type="text/css">
    h1,h2,h3,h4,h5,h6 {
    h1 {
    font-family: Verdana, Geneva, sans-serif;
    color: #15375e;
    font-weight: bold;
    font-size: 14px;
    h2 {
    font-family: Verdana, Geneva, sans-serif;
    color: #016596;
    font-weight: bold;
    font-size: 14px;
    h3 {
    color: #00A0AF;
    font-size: 14px;
    font-family: Verdana, Geneva, sans-serif;
    font-weight: bold;
    h4 {
    color: #679145;
    font-size: 14px;
    font-family: Verdana, Geneva, sans-serif;
    font-weight: bold;
    h5 {
    color: #B4D88b;
    font-size: 14px;
    font-family: Verdana, Geneva, sans-serif;
    font-weight: bold;
    .container .content #TabbedPanels1 .TabbedPanelsContentGroup .TabbedPanelsContent table tr {
    vertical-align: top;
    .container .footer copyright {
    </style>
    <div class="container">
      <div class="header"><!-- end .header --><img name="" src="" width="1024"
      " height="120" alt="logo" style="background-color: #FFFFFF" align="right" /></div>
      <div class="column1"></div>
      <div class="column2"></div>
      <div class="column3"><!-- end .column3 --></div>
      <div class="placeholder"><img src="Website_03-web-images/JL_ice.jpg" width="1024" height="400" alt="" /></div>
       <div class="content">
        <div id="TabbedPanels1" class="VTabbedPanels">
          <ul class="TabbedPanelsTabGroup">
            <li class="TabbedPanelsTab1" tabindex="0" onmouseover="TabbedPanels1.showPanel(this);">home</li>
            <li class="TabbedPanelsTab2" tabindex="0" onmouseover="TabbedPanels1.showPanel(this);">who are we?</li>
            <li class="TabbedPanelsTab3" tabindex="0" onmouseover="TabbedPanels1.showPanel(this);">our services</li>
            <li class="TabbedPanelsTab4" tabindex="0" onmouseover="TabbedPanels1.showPanel(this);">sectors of activity</li>
            <li class="TabbedPanelsTab5" tabindex="0" onmouseover="TabbedPanels1.showPanel(this);">contact</li>
          </ul>
         <div class="TabbedPanelsContentGroup">
        <div class="TabbedPanelsContent">
    <table width="686" border="0" cellspacing="0" cellpadding="0">
                <tr>
                  <td width="348" height="200"><div class="TabbedPanelsContent">
                    <home>
                      <h1>news</h1>
                    </home>
                    <p>News items can go here. Perum re sitibus eicita volupti inulpa doluptam, optate secum estiore idellectur rehenecabo. Nequidu cimolen ihilit quunt plab ipsunte caborup tinihic ipiscia menimin ulpari dolupta tendio esciust am et labo. <br />
                      Mincit quunto oditibus consecto berest ad miliquaspe debis voluptatus erum fugit hariberum rescipsa qui nistia estiusd andant autaepeles et rat.<br />
                      Vidi non pelique et eliata estinvellis volesequissi dus volorer umenien ihiciet vent volupta doluptat.</p>
    </div></td>
                  <td width="338" height="200"><div class="TabbedPanelsContent">
                    <h1> </h1>
                    <p>Dandem quamendit as pelendae placiamus adipiet, voluptur minctis ad qui sinctur repercia dolorerum aceatiis est aut erchil maio qui nobis accupta.<br />
                      ssimpe qui omniscid quunt id molupti orrorpor res estrumquae lab ipician debitaq uature, optate nobis ut illaborrum diae placit id moloreribus doluptatur, unt rehent laborent rempori tassed ma non ne id qui rem voluptatur mos.<br />
                      Apist rem fugit et, corepuda con reperum auts esendip.</p>
                  </div></td>
                </tr>
              </table>
            </div>
        <div class="TabbedPanelsContent">
         <table width="686" border="0" cellspacing="0" cellpadding="0">
                <tr>
                  <td width="348" height="200"><div class="TabbedPanelsContent">
                    <h2>who are we?</h2>
                    <p>Who are we? Why are we here? What do we do? Perum re sitibus eicita volupti inulpa doluptam, optate secum estiore idellectur rehenecabo. Nequidu cimolen ihilit quunt plab ipsunte caborup tinihic ipiscia menimin ulpari dolupta tendio esciust am et labo. <br />
                      Mincit quunto oditibus consecto berest ad miliquaspe debis voluptatus erum fugit hariberum rescipsa qui nistia estiusd andant autaepeles et rat.<br />
                      Vidi non pelique et eliata estinvellis volesequissi dus volorer umenien ihiciet vent volupta doluptat.</p>
    </div></td>
                  <td width="338" height="200"><div class="TabbedPanelsContent">
                    <h3><img src="" alt="Photo" width="338" height="200" hspace="0" vspace="0" align="texttop" /></h3>
                  </div></td>
                </tr>
              </table></div>
        <div class="TabbedPanelsContent"><table width="686" border="0" cellspacing="0" cellpadding="0">
                <tr>
                  <td width="348" height="200"><div class="TabbedPanelsContent">
                  <h3>our services</h3>
          <ul id="tab3">
            <li>Service 1 - description of the type of service goes here with a possible hyperlink or something</li>
            <li>Service 2</li>
            <li>Service 3</li>
          </ul>
        </div></td>
                  <td width="338" height="200"><div class="TabbedPanelsContent">
    </div></td>
                </tr>
              </table></div>
            <div class="TabbedPanelsContent"><table width="686" border="0" cellspacing="0" cellpadding="0">
                <tr>
                  <td width="348" height="200"><div class="TabbedPanelsContent">
                  <h4>sectors of activity</h4>
          <ul id="tab4">
            <li>Sector 1 - description of the sector of activity goes here with a possible hyperlink or something</li>
            <li>Sector 2</li>
            <li>Sector 3</li>
            </ul>
        </div></td>
                  <td width="338" height="200"><div class="TabbedPanelsContent">
    </div></td>
                </tr>
              </table></div>
         <div class="TabbedPanelsContent"><table width="686" border="0" cellspacing="0" cellpadding="0">
                <tr>
                  <td width="348" height="200"><div class="TabbedPanelsContent">
                  <h5>contact</h5>
                    <p>Name</p>
                    <p>Telephone number: +12 3456 7890</p>
                    <p>email: <a href="mailto:[email protected]">[email protected]</a></p>
                  </div></td>
                  <td width="338" height="200"><div class="TabbedPanelsContent">
                  </div></td>
                </tr>
              </table></div>
          </div>
        </div>
      <!-- end .content --></div>
      <div class="footer">
        <copyright>©2011  <!-- end .footer --></copyright>
      </div>
    <!-- end .container --></div>
    <script type="text/javascript">
    var TabbedPanels1 = new Spry.Widget.TabbedPanels("TabbedPanels1");
    </script>
    </body>
    </html>
    @charset "UTF-8";
    /* SpryTabbedPanels.css - version 0.6 - Spry Pre-Release 1.6.1 */
    /* Copyright (c) 2006. Adobe Systems Incorporated. All rights reserved. */
    /* Horizontal Tabbed Panels
    * The default style for a TabbedPanels widget places all tab buttons
    * (left aligned) above the content panel.
    /* This is the selector for the main TabbedPanels container. For our
    * default style, this container does not contribute anything visually,
    * but it is floated left to make sure that any floating or clearing done
    * with any of its child elements are contained completely within the
    * TabbedPanels container, to minimize any impact or undesireable
    * interaction with other floated elements on the page that may be used
    * for layout.
    * If you want to constrain the width of the TabbedPanels widget, set a
    * width on the TabbedPanels container. By default, the TabbedPanels widget
    * expands horizontally to fill up available space.
    * The name of the class ("TabbedPanels") used in this selector is not
    * necessary to make the widget function. You can use any class name you
    * want to style the TabbedPanels container.
    .TabbedPanels {
    overflow: hidden;
    margin: 0px;
    padding: 0px;
    clear: none;
    width: 338px;
    height: 30px; /* IE Hack to force proper layout when preceded by a paragraph. (hasLayout Bug)*/
    /* This is the selector for the TabGroup. The TabGroup container houses
    * all of the tab buttons for each tabbed panel in the widget. This container
    * does not contribute anything visually to the look of the widget for our
    * default style.
    * The name of the class ("TabbedPanelsTabGroup") used in this selector is not
    * necessary to make the widget function. You can use any class name you
    * want to style the TabGroup container.
    .TabbedPanelsTabGroup {
    margin: 0px;
    padding: 0px;
    /* This is the selector for the TabbedPanelsTab. This container houses
    * the title for the panel. This is also the tab "button" that the user clicks
    * on to activate the corresponding content panel so that it appears on top
    * of the other tabbed panels contained in the widget.
    * For our default style, each tab is positioned relatively 1 pixel down from
    * where it wold normally render. This allows each tab to overlap the content
    * panel that renders below it. Each tab is rendered with a 1 pixel bottom
    * border that has a color that matches the top border of the current content
    * panel. This gives the appearance that the tab is being drawn behind the
    * content panel.
    * The name of the class ("TabbedPanelsTab") used in this selector is not
    * necessary to make the widget function. You can use any class name you want
    * to style this tab container.
    .TabbedPanelsTab {
    position: relative;
    float: left;
    padding: 0px 10px 0px 0px;
    margin: 0px 0px 10px;
    font: bold 12px/22pt Verdana, Geneva, sans-serif;
    background-color: #DDD;
    list-style: none;
    border-left: none;
    border-bottom: none;
    border-top: none;
    border-right: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    cursor: pointer;
    color: #15375e;
    text-align: right;
    height: 30px;
    width: 270px;
    .TabbedPanelsTab1 {
    position: relative;
    float: left;
    padding: 0px 10px 0px 0px;
    margin: 0px 0px 10px;
    font: bold 12px/22pt Verdana, Geneva, sans-serif;
    background-color: #DDD;
    list-style: none;
    border-left: none;
    border-bottom: none;
    border-top: none;
    border-right: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    cursor: pointer;
    color: #15375E;
    text-align: right;
    height: 30px;
    width: 270px;
    .TabbedPanelsTab2 {
    position: relative;
    float: left;
    padding: 0px 10px 0px 0px;
    margin: 0px 0px 10px;
    font: bold 12px/22pt Verdana, Geneva, sans-serif;
    background-color: #DDD;
    list-style: none;
    border-left: none;
    border-bottom: none;
    border-top: none;
    border-right: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    cursor: pointer;
    color: #15375E;
    text-align: right;
    height: 30px;
    width: 270px;
    .TabbedPanelsTab3 {
    position: relative;
    float: left;
    padding: 0px 10px 0px 0px;
    margin: 0px 0px 10px;
    font: bold 12px/22pt Verdana, Geneva, sans-serif;
    background-color: #DDD;
    list-style: none;
    border-left: none;
    border-bottom: none;
    border-top: none;
    border-right: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    cursor: pointer;
    color: #15375E;
    text-align: right;
    height: 30px;
    width: 270px;
    .TabbedPanelsTab4 {
    position: relative;
    float: left;
    padding: 0px 10px 0px 0px;
    margin: 0px 0px 10px;
    font: bold 12px/22pt Verdana, Geneva, sans-serif;
    background-color: #DDD;
    list-style: none;
    border-left: none;
    border-bottom: none;
    border-top: none;
    border-right: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    cursor: pointer;
    color: #15375E;
    text-align: right;
    height: 30px;
    width: 270px;
    .TabbedPanelsTab5 {
    position: relative;
    float: left;
    padding: 0px 10px 0px 0px;
    margin: 0px 0px 10px;
    font: bold 12px/22pt Verdana, Geneva, sans-serif;
    background-color: #DDD;
    list-style: none;
    border-left: none;
    border-bottom: none;
    border-top: none;
    border-right: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    cursor: pointer;
    color: #15375E;
    text-align: right;
    height: 30px;
    width: 270px;
    /* This selector is an example of how to change the appearnce of a tab button
    * container as the mouse enters it. The class "TabbedPanelsTabHover" is
    * programatically added and removed from the tab element as the mouse enters
    * and exits the container.
    .TabbedPanelsTabHover {
    color: #fff;
    height: 30px;
    width: 300px;
    /* This selector is an example of how to change the appearance of a tab button
    * container after the user has clicked on it to activate a content panel.
    * The class "TabbedPanelsTabSelected" is programatically added and removed
    * from the tab element as the user clicks on the tab button containers in
    * the widget.
    * As mentioned above, for our default style, tab buttons are positioned
    * 1 pixel down from where it would normally render. When the tab button is
    * selected, we change its bottom border to match the background color of the
    * content panel so that it looks like the tab is part of the content panel.
    .TabbedPanelsTabSelected {
    height: 30px;
    width: 300px;
    /* This selector is an example of how to make a link inside of a tab button
    * look like normal text. Users may want to use links inside of a tab button
    * so that when it gets focus, the text *inside* the tab button gets a focus
    * ring around it, instead of the focus ring around the entire tab.
    .TabbedPanelsTab a {
    /* This is the selector for the ContentGroup. The ContentGroup container houses
    * all of the content panels for each tabbed panel in the widget. For our
    * default style, this container provides the background color and borders that
    * surround the content.
    * The name of the class ("TabbedPanelsContentGroup") used in this selector is
    * not necessary to make the widget function. You can use any class name you
    * want to style the ContentGroup container.
    .TabbedPanelsContentGroup {
    clear: both;
    border-left: none;
    border-bottom: none;
    border-top: none;
    border-right: none;
    background-color: #FFF;
    /* This is the selector for the Content panel. The Content panel holds the
    * content for a single tabbed panel. For our default style, this container
    * provides some padding, so that the content is not pushed up against the
    * widget borders.
    * The name of the class ("TabbedPanelsContent") used in this selector is
    * not necessary to make the widget function. You can use any class name you
    * want to style the Content container.
    .TabbedPanelsContent {
    padding: 0px 0px 0px 0px;
    list-style-image: url(file:///Macintosh%20HD/Users/marinka/Desktop/JL/optencia_website/images/bullet.png);
    /* This selector is an example of how to change the appearnce of the currently
    * active container panel. The class "TabbedPanelsContentVisible" is
    * programatically added and removed from the content element as the panel
    * is activated/deactivated.
    .TabbedPanelsContentVisible {
    padding-right: 10px;
    /* Vertical Tabbed Panels
    * The following rules override some of the default rules above so that the
    * TabbedPanels widget renders with its tab buttons along the left side of
    * the currently active content panel.
    * With the rules defined below, the only change that will have to be made
    * to switch a horizontal tabbed panels widget to a vertical tabbed panels
    * widget, is to use the "VTabbedPanels" class on the top-level widget
    * container element, instead of "TabbedPanels".
    .VTabbedPanels {
    overflow: hidden;
    /* This selector floats the TabGroup so that the tab buttons it contains
    * render to the left of the active content panel. A border is drawn around
    * the group container to make it look like a list container.
    .VTabbedPanels .TabbedPanelsTabGroup {
    float: left;
    width: 338px;
    height: 240px;
    position: relative;
    overflow: hidden;
    /* This selector disables the float property that is placed on each tab button
    * by the default TabbedPanelsTab selector rule above. It also draws a bottom
    * border for the tab. The tab button will get its left and right border from
    * the TabGroup, and its top border from the TabGroup or tab button above it.
    .VTabbedPanels .TabbedPanelsTab1 {
    float: left;
    overflow: hidden;
    .VTabbedPanels .TabbedPanelsTab2 {
    float: left;
    overflow: hidden;
    .VTabbedPanels .TabbedPanelsTab3 {
    float: left;
    overflow: hidden;
    .VTabbedPanels .TabbedPanelsTab4 {
    float: left;
    overflow: hidden;
    .VTabbedPanels .TabbedPanelsTab5 {
    float: left;
    overflow: hidden;
    /* This selector disables the float property that is placed on each tab button
    * by the default TabbedPanelsTab selector rule above. It also draws a bottom
    * border for the tab. The tab button will get its left and right border from
    * the TabGroup, and its top border from the TabGroup or tab button above it.
    .VTabbedPanels .TabbedPanelsTabSelected {
    text-decoration:none;
    overflow: hidden;
    /* This selector floats the content panels for the widget so that they
    * render to the right of the tabbed buttons.
    .VTabbedPanels .TabbedPanelsContentGroup {
    clear: none;
    float: left;
    padding: 0px;
    width: 686px;
    height: 240px;
    background-color: #fff;
    /* Styles for Printing */
    @media print {
    .TabbedPanels {
    overflow: visible !important;
    .TabbedPanelsContentGroup {
    display: block !important;
    overflow: visible !important;
    height: auto !important;
    .TabbedPanelsContent {
    overflow: visible !important;
    display: block !important;
    clear:both !important;
    .TabbedPanelsTab {
    overflow: visible !important;
    display: block !important;
    clear:both !important;

  • Spry tabbed panels: Shows everything when it shouldn't

    I have a spry tabbed panel with 2 tabs.
    In design view, this correctly shows me the contect of each of the tabs (a different table in each) when I click on the tab.
    When I run it in live view or the browser however, it displays both tabs TOGETHER, (i.e both table) and I can't select either of the tabs.
    I've attached a screen print.
    Any suggestions.

    The problem is with the tag name "s_phone".
    If iPhone Safari sees a tag name containing "phone", it automatically assumes you need the phone keypad. (Something similar goes for "zip".)
    Here's a test case setup someone made:
    http://www.iphonewebdev.com/examples/input.html

  • Tabbed Panels Open on Hover

    I was wondering if there was a way to fix Spry Tabbed Panels
    so that they open on hover instead of click? I would like to click
    on the tab to take me to another page instead. Is it
    possible?

    You can do what phil said, or change / edit the TabbedPanels.js
    on line 306
         Spry.Widget.TabbedPanels.addEventListener(tab, "click", function(e) { return self.onTabClick(e, tab); }, false);
    change that by
         Spry.Widget.TabbedPanels.addEventListener(tab, "mouseover", function(e) { return self.onTabClick(e, tab); }, false);

  • Spry Tabbed Panel Content editable region not functioning

    I have a web page I created in dreamweaver CS5 with a tabbed panel.  When my client opens the page to edit in contibute, the content and tabs do not function properly.  Basically, the tabs do not function and the content for all of the tabbed regions is listed down the page on the first tab window. The page works fine when I open in Contibute on my computer, but only if it is through the Contibute Program.  If I try to edit through firefox, I get the same issue as my client. 
    http://menwieldingfire.com.previewdns.com/bbq/bbq-menu.html
    also, I get a space between the header image and the horizontal menu that goes white.  I end up having to re-upload the page from dreamweaver. Why would the follow code get added to the page when a draft is created in Contribute, when this page is based on a template with editable regions?
    < p style="margin-top: 0; margin-bottom: 0;">&nbsp;</p >
    Any ideas?

    Check http://blogs.adobe.com/contribute/2010/06/paragraph_spacing_options_in_a.html  and also http://blogs.adobe.com/contribute/2010/06/spry_widget_rendering.html it should be helpful to resolve the issue.

  • Link to tabbed panel works once, but not again

    I have successfully linked from text in one tabbed panel to open another panel on the same page, using SpryURLUtils.js.
    <a href="?tab=2#TabbedPanels1">
    var TabbedPanels1 = new Spry.Widget.TabbedPanels("TabbedPanels1", {defaultTab: params.tab ? params.tab : 0});
    When I return to the panel containing the link, the link no longer functions. So basically, it will work once, but not twice.
    Thoughts on what's happening?

    The example that you gave is great for opening a tab in a new page.To open panels on the same page see here http://labs.adobe.com/technologies/spry/samples/tabbedpanels/tabbed_panel_sample.htm
    Gramps

  • Every time I open a new tab it shows ASK and not google?

    My home page is set to google but every time I open a new tab it comes up as ASK.com, how do I get rid of it and keep google.

    Go to [http://www.google.com Google] and go to "Tools">> "Options" >> "General" Click on "Usar the current page"(somethings like)

  • Help, Spry Tabbed Panels are causing links not to work

    Here is the page: http://www.spalutions.com
    Here are the trouble spots:
    Menu at very top of page
    Home | Contact Us | Site Map
    Links within the panels
    Email link at the bottom of the content area
    Any help would be greatly appreciated!

    Fascinating.
    The Validator found three important errors you might fix to see if they help resolve the problem:
    at about line 107:
    <div class="editable"div id="contentWrapper">
    at about line 197:
    <div class="editable" div id="footer2"></div>
    and
    id="footer" twice on page
    After you fix these, run the Validator again: http://validator.w3.org/check?verbose=1&uri=http%3A%2F%2Fwww.spalutions.com%2Findex.html to find any more important issues.
    Then let us know if that helped!
    E. Michael Brandt
    www.divahtml.com
    www.divahtml.com/products/scripts_dreamweaver_extensions.php
    Standards-compliant scripts and Dreamweaver Extensions
    www.valleywebdesigns.com/vwd_Vdw.asp
    JustSo PictureWindow
    JustSo PhotoAlbum, et alia

  • Google Analytics on Spry Tabbed Panels

    I have created a website where I am using a few main html pages and have vertical Spry Tabbed panels for sections of information within most of the pages.  I wish to track the clicks on the vertical Tabbed panels, but I am not having much luck implementing it.  I could probably figure it out if I saw an example somewhere.  I have also implemented a "back button" feature (thanks to Arnout Kazemier!) and clicking to go directly to a tab on a page using the SpryUtils into the default tab option for Spry Tabbed Panels.  The Google Analytics web pages have information on gadget tracking, and one on tracking AJAX,  and one on using the newer asynchronous tracking (which is supposed to be better for Ajax, etc).   I have tried to implement asynchronous tracking along with the "Tracking AJAX" recommendation by Google with no information being posted in a couple of days.
    My website page where I have tried to implement it is here:
    http://www.phostech.com/opt_con_v2.html
    I have also seen examples where a counter is used just to count, but I would like the information on which pages were clicked.
    I would rather not do this using the event tracking (but if that's the only way I'm OK), partly because the event tracking would be separate from the page tracking and the other features woudn't be as useful (exit page, sorting based on content, etc.).
    I am not a great programmer, but I could probably manage it I saw an example close enough to what I need.
    If anyone has any ideas, solutions, implemented examples that could help me, I would greatly appreciate it.
    Thanks!

    I have checked out your page using Firefox, firebug net panel that monitors requests from and to your page. And i do see a successful call to the google servers. But I also noticed a JavaScript error on your page caused by these lines of code:
      http_request.onreadystatechange = sendAlert;
           http_request.open('GET', url, true);
           http_request.send(null);
    You might want to remove those.

  • First tab wont close, navigation buttons not working

    Every time I open up Firefox, the first tab loads up my Home Page. But none of my navigation buttons work. I cant go back or home or anything.Then the back, foreword, reload and stop buttons will work after I open up a new tab. I still can not click the home button, well i click it, but It just does nothing, and yes i have made sure I have a home page set. I am never able to close the first tab that opens with the browser until i close the entire browser. I am able to close any tab i open after, but never the first one.

    Start Firefox in [[Safe Mode]] to check if one of your add-ons is causing your problem (switch to the DEFAULT theme: Tools > Add-ons > Themes).
    * Don't make any changes on the Safe mode start window.
    See [[Troubleshooting extensions and themes]] and [[Troubleshooting plugins]]
    You may also have a problem with the file places.sqlite that stores the bookmarks and the history.
    * http://kb.mozillazine.org/Bookmarks_history_and_toolbar_buttons_not_working_-_Firefox

  • Spry Tool tip on Tabbed panels

    I am having a problem with the new spry tool tip widget. I
    have a Tabbed panels table with 4 tabs. For some reason the spry
    widget only works when I have 4 seperate div's with the tool tip
    content and 4 separate js variables placed after the divs. One must
    be on each tab. Is there any way to make it work so there is one
    div and one variable creation on the page rather than 1 for each
    panel?. heres how my code works:
    <head>
    <body>
    <div class="TabbedPanels" id="tp1">
    <ul class="TabbedPanelsTabGroup">
    <li class="TabbedPanelsTab" tabindex="0">TAB
    1</li>
    <li class="TabbedPanelsTab" tabindex="1">TAB
    2</li>
    <li class="TabbedPanelsTab" tabindex="2">TAB
    3</li>
    <li class="TabbedPanelsTab" tabindex="3">TAB
    4</li>
    </ul>
    <div class="TabbedPanelsContentGroup">
    <div class="TabbedPanelsContent">
    <div id="Funds_DIV1" spry:region="ds1"
    class="SpryHiddenRegion" >
    <table>
    <div id="blindMe" class="toolTip"> <%=accesstxt
    %> </div>
    <script type="text/javascript">
    var blindTooltip = new Spry.Widget.Tooltip('blindMe',
    '.blindTrigger');
    var blindToolTipClosed = new
    Spry.Widget.Tooltip('blindMeClosed', '.blindClosedTrigger');
    </script>
    </table>
    </div>
    </div>
    <div class="TabbedPanelsContent">
    <div id="Funds_DIV2" class="SpryHiddenRegion"
    spry:region="ds2">
    <table>
    <div id="blindMe" class="toolTip"> <%=accesstxt
    %> </div>
    <script type="text/javascript">
    var blindTooltip = new Spry.Widget.Tooltip('blindMe',
    '.blindTrigger');
    var blindToolTipClosed = new
    Spry.Widget.Tooltip('blindMeClosed', '.blindClosedTrigger');
    </script>
    </table>
    Repeat two more times . You get the idea

    Sorry i just kinda threw that together as a mock up
    id="blindMe" becomes id="blindMe2" and so on for each subsequent
    use. I had already checked for that. The same thing goes for the
    associated script variable. It works as is, i just dont want to
    have to duplicate it.
    The problem is, if i remove all the duplicated divs and
    scripts, then place that script and div on the bottom of the page
    after the </div> for the tabbed panels div, the hover state
    no longer works. Same is true if i keep it within the </div>
    the only way it does work is if i duplicate it within each tabbed
    panels content divs. (With different id values of course)

  • My html table is not showing on the 2nd tab panel (muse widget)

    The same table works just fine on the first tab however when I try to click on the second table in browser mode or preview page on browser, my table does not show up. Any tips for fixing this issue?

    If I get this right, you're using the Tabbed panel widget to display a HTML table in each of the tabs. If that is the case, please make sure you insert the HTML content on each the tab's content area respectively. In order to verify this, switch between the tabs in Design mode to check your content.
    Thanks,
    Vinayak

  • Why cant i open all my bookmarks in a new tab? only the ones visible above me, not the ones that show up when i click in the arrow to the upper right?

    why cant i open all my bookmarks in a new tab? only the ones visible above me, not the ones that show up when i click in the arrow to the upper right?

    Uninstall the Ask toolbar and it should work again. There is a compatibility issue with the Ask toolbar and Firefox that prevents new tabs from being opened.
    There are a couple of places to check for the Ask toolbar:
    * Check the Windows Control panel for the Ask Toolbar - http://about.ask.com/apn/toolbar/docs/default/faq/en/ff/index.html#na4
    * Also check your list of extensions, you may be able to uninstall it from there - https://support.mozilla.com/kb/Uninstalling+add-ons

  • Tabbed panel changes not showing up

    I'm using Dreamweaver CS5 on a Mac. A couple of years ago I created a website using tabbed panels (http://www.4dtr.com/Communication_Interpersonal.html), Recently, I went to make some modification to the tabs:
    1. altered the text in the tab
    2. Changed background colour of the tabbed panel)
    3. Changed the font size
    When I preview the changes in DW they seem to have worked...they also show up when I look in the Adobe Browser Lab. When I upload to the server however only the "altered text" modifications shows up. The change to background color as well as change to font size do not. What am I doing wrong? Help please...

    The first thing I notice as I look at your CSS Panel is that many of your styles are existing in the page itself instead of in a linked CSS stylesheet.
    Before you proceed, check through the list of styles in the CSS Styles Panel and delete styles that you don't need. Any style that has been completely superseded by another style further down on the list can be deleted. You should be left with only styles you want to be active.
    It is simple to move those styles to an external stylesheet; you can do it right in the CSS Panel.
    The aim is to have styles associated with the tabbed panels in the "SpryTabbedPanels.css" file, and to have no styles embedded in the page. Then you will make sure those external stylesheets are attached to all the pages that need those style. The on-page, embedded styles are shown in the CSS Panel (with "all" selected as the view) under labels that read: "<style>".
    I would also recommend creating a global.css stylesheet for those other styles that also should occur throughout your site. Do File > New > Blank Page > CSS to create the new stylesheet. After you have created this stylesheet, attach it to your page. If you are working with a true template file (file extension is .dwt), I suggest attaching it to that template. With the page in question open, open the CSS Panel and click the chain icon at the bottom of the Panel. Select the newly created stylesheet to link it to the page.
    Then select the styles you want to move, and keep holding the mouse down while you drag them under the appropriate stylesheet name in the CSS Styles Panel. You could also select them and right click, choosing 'move CSS styles'.
    Here's some links to info about the CSS Styles Panel: http://help.adobe.com/en_US/Dreamweaver/CS5/Using/WSbb8fae38174aec9d-4fb84361126e2b2aaf3-8 000.html
    The long and the short of it is: If a style was changed and the style sits on the page, that change is not reflected throughout the site, only on that page. If the style is moved (or created) on an external stylesheet, and the stylesheet is linked to all pages, that change will be reflected throughout the site.
    N.B.: If you change the template file, be sure to propagate the changes to all the pages that are based on that template. And don't forget to upload the changed files...
    Beth

  • After clicking Mac App store "Updates" tab, it shows me an empty page. Note that 1 update is pending.

    Mac App store showing 1 pending update, but when I click "Updates" tab, it shows an empty page. Have tried resetting PRAM, SMC, Safe Mode, removing all third party Apps. When I reinstall OS X Mavericks or Yosemite, the problem appears again. I have tried uploading screenshot, but when try to confirm, nothing happens. Seems like some problem with Internet connection...

    The Apple Support Communities are an international user to user technical support forum. As a man from Mexico, Spanish is my native tongue. I do not speak English very well, however, I do write in English with the aid of the Mac OS X spelling and grammar checks. I also live in a culture perhaps very very different from your own. When offering advice in the ASC, my comments are not meant to be anything more than helpful and certainly not to be taken as insults.
    The OS X Mt Lion up-to-date program;
    http://www.apple.com/osx/uptodate/

Maybe you are looking for