Spry Sliding Panels - Next Link
I was hoping that someone might be able to give me a hand in
modifying the sample code for the Spry SlidingPanels from a
dataset.
I'm able to display 4 panels but the "Next" link in the
sample has been designed to show only on the even records rather
than a fixed number. How would I change this code to display the
"Next" link if I'm showing 4 panels instead of the sample's 2
panels?
<div class="panelnav right" spry:if="{ds_RowNumber} % 2 !=
0 && {nextStartIndex} <
{ds_RowCount}"><a href="#"
onclick="sp1.showPanel('p{nextStartIndex}'); return false;">Next
>></a></div>
Thank you!
I need to rework that sample. The way I would make this a bit
easier for folks to adjust would be to make numberOfPanelsPerView
global. So in that example, modify the code that looks like this:
ds1.addObserver({ onPostLoad: function() {
var numberOfPanelsPerView = 2;
So that it looks like this:
var numberOfPanelsPerView = 2;
ds1.addObserver({ onPostLoad: function() {
And then change the markup that looks like this:
spry:if="{ds_RowNumber} % 2 == 0 &&
{prevStartIndex} >= 0"
spry:if="{ds_RowNumber} % 2 != 0 &&
{nextStartIndex} < {ds_RowCount}"
To look like this:
spry:if="{ds_RowNumber} % numberOfPanelsPerView == 0
&& {prevStartIndex} >= 0"
spry:if="{ds_RowNumber} % numberOfPanelsPerView != 0
&& {nextStartIndex} < {ds_RowCount}"
Then it would just be a matter of someone changing
numberOfPanelsPerView to 4:
var numberOfPanelsPerView = 4;
--== Kin ==--
Similar Messages
-
Spry: Sliding panels - Next/previous buttons
I'm trying to make a horisontal sliding panel with next and
previous buttons. When the user are on the first panel I don't want
to display the previous button, or if the user are on the last
panel, I don't want to display the next button.
How can I check which panel thats active, and how can I get
the last panels ID/number?var currentPanel =
sp1.getContentPanelIndex(sp1.currentPanel); // Current panel
var firstPanel = 0; // First panel
var lastPanel = sp1.getContentPanels().length - 1; // Last
panel -
Edit JS on spry sliding panels widget to fix auto panel height problem
Hi guys,
Ive been trying for a while to make the sliding panels widget
show each panel in its own height instead of the longest panel's height in the container.
I tried reading all the js file to play with it and find a solution but the truth is i dont know how to do what i want.
I do, however, have a list of things that i believe if implemented should work,
could you help me do these fixes on the js? ( any one you know how to or think will work )
1. edit so that: Panels dont have any height ( or panel content display none ) if it isnt current panel. If current panel is "id:1" the assume class 1 style properties. As soon as it looses focus/"currentpanel" class it looses its class 1 properties. And the new current panel ("id:2") assumes its own class 2 properties. And so on.
2. edit so that: PanelContainer ( the one that holds all the panels ) displays none BUT the current panel. So all panels could be display none unless they assume the "currentpanel" class and so they change to display. Maybe this way the container assumes only the height of the displayed panel and looses it once its no longer displayed assuming the next displayed one.
3. edit so that: Panel container checks for current panel's height and assumes that height instantly ( there is still a panel inside the container that would be longer than the current panel, maybe with overflow hidden this isnt a problem )
4. Using SpryDOMUtils.js I am currently playing with the code pasted below,
the idea came from Gramp's Spry Sliding Panels Group Navigation Buttons cookbook
He addresses a different problem, but since it has to do with identifying the current panel and doing something when the panel is x number, i thought there could be a height property set for each panel when each is the current one, atleast something can be done with this, my problem is i dont know how to set that something. Please check out the following code:
<script>
// The following function - setPanelNavigation() - assumes the following
// 1. Sliding Panels have a class of SlidingPanelsContent AND a unique ID
// 2. The Previous Panel button has an ID of previousPanel
// 3. The Next Panel button has an ID of nextPanel
// 4. SpryDOMUtils.js has been linked
function setPanelNavigation() {
var current = sp1.getCurrentPanel(); // Get the current panel
var panelCount = sp1.getContentPanelsCount(); // Get the total number of panels
var panelNumber=1; // Give a value to the first panel number
Spry.$$(".SlidingPanelsContent").forEach(function(node) { // Cycle through the panels
if (node.id==current.id){ // The current panel now receives a number
if ( panelNumber==1 ) Spry.$$(".SlidingPanelsContentGroup").setAttribute('height', 750); //
if ( panelNumber==2 ) Spry.$$(".SlidingPanelsContentGroup").setAttribute('height', 250); //
panelNumber++; // Go to next panel after incrementing the count
Spry.Utils.addLoadListener(setPanelNavigation); // Set buttons to initial value
var sp1 = new Spry.Widget.SlidingPanels("panelwidget");
</script>
What am i doing wrong in that bit ? I thought i had it there, but it didnt work.
Anyone, please help. Thank you.wait my bad, the link to my page is:
http://www.pupr.edu/department/industrial/students.asp
** no s on department -
Spry Sliding Panels Question..
Hello,
I'm building a website and want to have a small image gallery page, with Spry Sliding Panels as the framework. Everything was working fine until I realized that in the browser, when I clicked the link to go the next panel, the actual web page itself automatically snaps back up to the top before the panel actually slides. I was wondering how to fix this because the gallery is about halfway down the page, and it looks stupid when the page jumps back up to the top each time. Thanks for your help...Yes, your panel button code (with my change) should look like this:
<div class="panelbtn"><a href="javascript:;" onclick="sp1.showFirstPanel(); return false;">1</a></div>
<div class="panelbtn"><A href="javascript:;" onclick="sp1.showPanel(p2); return false;">2</a></div>
<div class="panelbtn"><A href="javascript:;" onclick="sp1.showPanel(p3); return false;">3</a></div>
<div class="panelbtn"><A href="javascript:;" onclick="sp1.showPanel(p4); return false;">4</a></div>
This is what I meant when I said to replace the # with the word javascript:;
Beth -
Okay, So I'm dense at times!
I want to try and learn the Spry Sliding Panels. Problem is that it does not appear in my Insert – Spry menu. After reading at Labs it assumes that since I have DW CS4 that it is installed. I can't be that dense.
Yeah, I located the CSS and and JS files online at Adobe. But that sure won't install it into my DW – Insert menu.
Am I really that dense?To my knowledge it shouldn't appear in the insert menu?
I did the below tutorial to learn all about sliding panels.
The tutorial will show you how to link your js and css files to your html etc, which make the panels work.
http://www.adobe.com/devnet/dreamweaver/articles/sliding_panel.html -
I've been working on extending Spry's Sliding Panels to allow
me to set a timer to auto advance to the next panel. Whilst I had
success with a script that targeted a particular element (eg sp1)
it really isn't terribly useful to have to recode per panel. So
trying to extend instead. Problem is that I keep getting an error
that says the advanceToNextPanel function doesn't exist. Hoping
someone might be able to point me in the right direction. Code
below:
// Sliding Panel Timer
// Based upon
http://labs.adobe.com/technologies/spry/demos/gallery/gallery.js
and feedback within the Adobe Spry forum
// Extend SlidingPanels to include additional data
Spry.Widget.SlidingPanels.prototype.gPanelShowInterval =
1000; // msecs between panels
Spry.Widget.SlidingPanels.prototype.gPanelShowOn = false;
Spry.Widget.SlidingPanels.prototype.gPanelShowTimer = null;
Spry.Widget.SlidingPanels.prototype.gAutoStartPanelShow =
true;
Spry.Widget.SlidingPanels.prototype.addPanelShowTimer =
function()
if (this.gPanelShowInterval == undefined)
this.gPanelShowInterval = 10000; // msecs between panels
if (this.gAutoStartPanelShow)
this.startPanelShow();
// Kill any previous timer event
Spry.Widget.SlidingPanels.prototype.killPanelShowTimer =
function() {
if (this.gPanelShowTimer)
clearTimeout(this.gPanelShowTimer);
this.gPanelShowTimer = null;
// Display next sliding panel on rotational loop
Spry.Widget.SlidingPanels.prototype.advanceToNextPanel =
function() {
var tPanels = this.getContentPanels().length - 1; // Total
Panels
var cPanel = this.getContentPanelIndex(this.currentPanel);
// Index of currently displayed panel
if (tPanels == cPanel)
this.showFirstPanel(); // Return to the first panel
else
this.showNextPanel(); // Show the next sliding panel
this.setPanelShowTimer();
// Setup timer event to change to next panel
Spry.Widget.SlidingPanels.prototype.setPanelShowTimer =
function() {
this.killPanelShowTimer(); // Kill any previous timer event
this.gPanelShowTimer = setTimeout( function() {
this.gPanelShowTimer = null; this.advanceToNextPanel(); },
this.gPanelShowInterval);
// Start the timed sliding panel
Spry.Widget.SlidingPanels.prototype.startPanelShow =
function() {
this.gPanelShowOn = true;
this.setPanelShowTimer();
};My previously posted I'd fixed this but it is in fact not
working.
Hi hope you can help.
My Spry Sliding panel is appearing over my floats in IE, fine
in Firefox.
Test
page here
Sliding
Panels CSS Here
Any ideas?
Is this a spry problem or my CSS?
Thanks.
Rich -
Maybe I'm missing something but I've been stuck on this for a
long time. In one example of the spry sliding panel with tab there
are <li> elements for the menu like this...
<ul class="slidingTabPanel">
<li><a href="#" id="about" class="tabActive"
title="about"></a></li>
<li><a href="#" id="contact" class="tab"
title="contact"></a></li>
</ul>
and they should link to...
<div id="aboutPanel" class="p1"></div>
<div id="contactPanel" class="p2"></div>
with contents in each of those DIV
I just can't seem to get the buttons to do anything, how are
the <li> calling the panels?Actually, I figured it out. I had to edit the sp_withTabs.js
file with the IDs as well, that's whats calling the CSS class.
My problem now is that everything is all good with 4 tabs,
but when I try to add another tab, no matter what path I set for
the background image state it always shows the image of the fourth
tab and not a new image. -
Spry Sliding Panel Widget Template
I have inserted the Spry Tabs and Accordion widgets and
adjusted using CSS. Can I do the same with a Spry Sliding Panel
Widget?, if so where can I access a sliding panel widget to
adjust?.
I have found a tutorial to create a Spry Sliding Panel Widget
inserting code, but my code experience is zero.
ThanksAlso copy the required Javascript file and CSS file to the
correct location..
in the <head></head> of the page u will see
<script src=""> go to the location of the src.. copy and
paste the files to your new location in the same folder, or change
the src to match the new location of the file. Do the same for the
CSS wich is included at the <link href= -
Spry Sliding Panel automatic changes
Hi, is there any way to do sliding panel to change
automatically (without clicking on any link) with some duration,
about 10sec.? I will be appreciate for any helpMy previously posted I'd fixed this but it is in fact not
working.
Hi hope you can help.
My Spry Sliding panel is appearing over my floats in IE, fine
in Firefox.
Test
page here
Sliding
Panels CSS Here
Any ideas?
Is this a spry problem or my CSS?
Thanks.
Rich -
Spry Sliding Panel Problem - Repost
Hi hope you can help.
My Spry Sliding panel is appearing over my floats in IE, fine
in Firefox.
I previously posted but it is in fact not working.
Test
page here
Sliding
Panels CSS Here
Any ideas?
Is this a spry problem or my CSS?
Thanks.
Richquote:
Originally posted by:
kinblas
If you're getting a "Spry is undefined" error, it probably
means that the browser is not finding the JS files you included at
the top of your HTML file. Make sure the path to your JS files are
correct ... you can do this by trying to load the JS files directly
in the URL field at the top of your browser.
--== Kin ==--
if u look at the code.. u will seee:
<link href="SprySlidingPanels.js" rel="stylesheet"
type="text/javascript"/>
it should be
<script src="SprySlidingPanels.js"
type="text/javascript"></script> -
SIFR 3 and Spry Sliding Panels
I am having trouble combining spry sliding panels and sIFR 3
r419 in firefox. Implementation works perfectly in IE6 & 7 but
in FF3 the headings flicker as one panel slides out and as another
slides in.
I have tried adding sIFR.replace to onclick to combat this,
as described in another post but to no avail.
Does anyone have any suggestions?
Many thanks
MarcelAdd a valid Document Type Declaration on your page. (DTD) and it should work smoothly.. You could have found this out if you would just validate your page. validator.w3.org.
-
Spry Sliding Panels & iFrames Issue
NOTE: This was also posted in the Dreamweaver section
http://www.ripplecommunications.com/75th/index.htm
I'm having an issue with iFrames and their visibility within
a Spry sliding panel. When the panel slides, the iFrame stays
visible outside of the sliding panel container.
Any ideas? You can see an example above, click on a date in
the timeline. This seem to occur in Firefox. IE 7 is OK.
2.0.0.11 on a PC. Below is a screenshot to the issue that I
see.
http://www.ripplecommunications.com/75th/screen.pngjim,
I am working with sliding oanels in GoLive and trying to
incorpoate iFrames as well. It seems to work (all manual coding of
course) and i do not have problems with the visible issues. have
you checked the
"slidingpanelsconent"..."overflow"
value in the css file, should be hidden. -
Hi hope you can help.
My Spry Sliding panel is appearing over my floats in IE, fine
in Firefox.
Test
page here
Sliding
Panels CSS Here
Any ideas?
Is this a spry problem or my CSS?
Thanks.
RichApologies, I have fixed that with clear: both;
But IE6 my panel doesn't appear at all!
Rich -
Spry Sliding Panels not working in IE
I've been working for about 12 hours straight on getting this
working correctly - my Sliding Panels just aren't working at all in
IE. The panels load properly - for example, you can see only the
first loaded panel, not all of them - but when I click a link to
switch to the next, nothing happens. Firebug is reporting no
errors, and neither is IE. Here is the relevant code:
<head><script type="text/javascript"
src="SpryAssets/SprySlidingPanels.js"></script>
<link type="text/css" rel="stylesheet"
href="SpryAssets/SprySlidingPanels.css"></head>
<div id="mainContent">
<div id="panelwidget" class="SlidingPanels">
<div class="SlidingPanelsContentGroup">
<div class="SlidingPanelsContent" id="main">Main
Content<br /><a href="images/news.png" rel="lytebox"
title="Omgtest!"><img src="images/news.png"
/></a><br /> <a href="javascript:void(0);"
onclick="sp1.showPanel('series');">TEST</a></div>
<div class="SlidingPanelsContent" id="series">Series
and Models</div>
<div class="SlidingPanelsContent" id="about">About and
Bio</div>
</div>
</div>
<script type="text/javascript">var sp1 = new
Spry.Widget.SlidingPanels("panelwidget");</script>
</div>
The following might be somewhat related: I am using the
Lytebox javascript library, which is a Lightbox clone (that doesn't
use prototype), as well as a preloader for my mouseover nav bar,
with this code:
<script type="text/javascript">
function init() {
MM_preloadImages('images/menu/main_click-trans.png','images/menu/main_hover-trans.png','i mages/menu/series_click-trans.png',
'images/menu/series_hover-trans.png','images/menu/about_click-trans.png','images/menu/abo ut_hover-trans.png');}
</script>
My nav bar links to the panels like this:
onclick="MM_nbGroup('down','group1','Main','images/menu/main_click-trans.png',1);
sp1.showPanel('main'); return false"
However, a plaintext link inside of the first panel - "<a
href="javascript:void(0);"
onclick="sp1.showPanel('series');">TEST</a>" - does not
work either.
Just for fun I thought I would try adding min-height:0; zoom:
1; to the CSS classes for slidingpanels.... no dice there as well.
URL is
www.goldensealdrums.com/wip
Any ideas? I am at a complete loss. Thanks.Thanks for your help :] I ended up realizing that a huge
bloated js navbar wasn't all that great of an idea anyway, so I
scrapped it and used a CSS-based one instead...much cleaner and
works better (no preloading! woohoo.) It looks like the problem was
probably an amalgamation of many things, but it's resolved now.
quote:
IE doesn't seem to like the PNG images you are using
understatement of the decade. -
Hi
So yeah. When using the sliding panels widget, I want to be
able to hightlight in the menu eg Prev 1 2 3 Next, which sliding
panel is currenly being viewed. This must work when either pressing
the page number or my clicking through using the Prev and Next
buttons.
Any ideas would be greatly appreciated.
Cheers
JenDid you check out the source code for that those panels?
http://labs.adobe.com/technologies/spry/samples/slidingpanels/sp_withTabs.js
Als you see, they use a separate function to set active classes to the tabs. You can use the same functionality for your active link class.
Maybe you are looking for
-
What do I need to use my "IPAD MINI" on a TV without HDMI?
Hi all, I hope you guys can help as Apple Support on the phone and in store were useless!!!! Dilemma I had an IPAD 2 and brought the Apple AV composite lead (http://store.apple.com/us/product/MC748ZM/A/apple-composite-av-cable) so I could watch my IP
-
Unable to get _.instanceManager.addInstance working
I created a very simple Expense Report form using Adobe Designer 7.0 and I'm not able to get the addInstance function to work. What I'm trying to do is have a button for my users to add additional line items. I have created a subform called "BasicInf
-
Is it possible to persuade software to use RAM instead of hard drive?
I have 16GB in my iMac and also in my MacBook Pro, the only times I see it really being used is when I run virtual machines that forcibly grab 2GB or whatever, that I have told them to grab. Most programs tend to run with just their own code in memo
-
Error when trying to upgrade firmware.
Greetings. I was updating the firmware for my WRT54G V5 (via wired connection), but suddenly the router stopped responding. Since then, the power light has been intermitent and I can't even try to connect to the router. Is there any solution? Thanks
-
I can't seem to connect my N97 with sony Ericson b...
I have tried to connect it for a few days now...still doesn't connect. I tried searching for the device but every time it says "No device found". It can connect with other people's phone but not the bluetooth. It's so frustrating. Can anyone help m