Closed (duplicate)
Project:
Views Slideshow
Version:
6.x-2.x-dev
Component:
Miscellaneous
Priority:
Normal
Category:
Feature request
Assigned:
Issue tags:
Reporter:
Created:
19 Oct 2008 at 17:33 UTC
Updated:
8 Nov 2011 at 07:53 UTC
Jump to comment: Most recent, Most recent file
Comments
Comment #1
akahn commentedFirst of all, Views Slideshow doesn't refresh the page each time the image changes. That wouldn't be much of a slideshow. It loads all of the elements of the slideshow on a page and then rotates through them so that only one is showing at a time.
But you bring up a good point, and I was wanting to see what Aaron thought of this: what if Views Slideshow on Drupal 6 somehow made use of Views 2's Ajax pagination? Create a View that is meant that only shows 1 node per page and uses an Ajax pager. Then rotate on a timer between each node. This would be useful for a site I'm working on where we want basically a Views Slideshow, but want little buttons for slide 1, 2, 3, 4, etc. to allow users to go between them. Basically a Views Slideshow version of the Flash thing here: http://www.freepress.net . Curious of your thoughts on this.
Comment #2
anantagati commentedChanging to feature request.
Comment #3
dragonwize commentedThis would definitely be interesting hopefully we can see this in a future release.
Comment #4
yang_yi_cn commentedI'd like to have ajax loading a feature. It's actually a must feature for video slideshow.
In my case, I have 4 video nodes (with emvideo cck) on slideshow, when hover on thumbnails it displays the youtube video as preview.
The problem is, our QA guy find out that, when you clicked 'play' on video 1, it plays. Then you hover to the 2nd thumbnail, video1 is hidden, but it still plays! So if you preview/play video 2, you will hear both of them at the same time, which is bad for the user's experience.
I had to retreat back to use image only preview. But if it is loaded through AJAX instead just show/hide, I can make the video slide show in preview mode.
Comment #5
highvoltage commentedremoved thanks to asak's comment. Sorry, I can be a real space cadet at times.
Comment #6
gunzip commentedsubscribe
Comment #7
asak commented@highvoltage: that's another project.. it's not Views Slideshow related...
subscribing.
Comment #8
joostvdl commented+1
Comment #9
natuk+1
Comment #10
guillaumeduveauThis is an important feature to add. Now, all the slideshow pictures are loaded with the page, which limits the slideshow to a restricted number of pictures, unless you don't care about a huge page download size.
Comment #11
naught101 commented#450562: Disable caching of slideshow frames marked as a duplicate of this issue.
Comment #12
vacilando commentedSubscribing
Comment #13
redndahead commentedBumping version, subscribing and thinking.
We would need a new plugin, like singleframe and thumbnailhover, that handles this.
It would require that one set the number of items to display to 1 and then somehow use views pager functionality to pull in the additional items. The additional page would be pulled in when the previous slide displays to keep a smooth slideshow.
Would be interested in seeing someone take a whack at it.
Comment #14
virtualdrupal commentedSubscribing
Comment #15
naught101 commentedAs a work around: Create a view with about 30 items per page, with sorting set to random, and then make a slideshow in that view with sorting set to random - this will only work in single frame mode, but since it'll be pretty rare for anyone to hang around on one page for thirty frames of a random slideshow, no-one's going to notice that it's repeating after every 30 slides, and the slides will change next time they visit the page anyway.
Comment #16
finex commentedI'd like to have the ajax views support in order to create views like the attached file.
Comment #17
adamo commentedAJAX loading of slides would be awesome. I'd still like to be able to preload some slides though. So if you could configure the number of slides that are preloaded and then the number of slides that are loaded on each AJAX call that would be ideal. Like you could initially load 5 slides, then when it gets to slide number 3 it does an AJAX request getting the next 3 slides... So the slideshow would be continuous (not lag during AJAX request), and you would also not have to do a separate request for every slide.
Comment #18
Miteto commentedSubscribing
Comment #19
djschoone commentedSubscribing.
Preconfiguring the number of preloaded items is a must. As far as i know the .js requires at least 2 items, before slide is activated.
Comment #20
Tarsjusz commentedsubscribe
Comment #21
andyf commentedsubscribe
Comment #22
Jason Ruyle commentedI have a site that loads slides of photos. I created a slide-node.tpl.php and load those nodes that are published into our homepage slide. The issue for us is that with 30 slides showing (yes its a lot), the page is 11MB. But if we could load these through ajax, then we really could load that many slides.
I had hoped for something like lazyload, but seems like that has to do with position on page or an entire script.
subscribing to thread
Comment #23
pacome commentedI'm also working on a site with large images to present as background slides (1024 x 680px), with sometime more than 20 images... Even with well compressed pics, the load time become a problem.
An ajax loading would be awesome!
Subscribing with great hope ;)
Best
-P-
Comment #24
MamaGubs commentedsubscribe
Comment #25
kentr commentedsubscribe
Comment #26
frankcarey commentedThis is a necessity for large/large number of images: I see there is an Ajax Slideshow module out now http://drupal.org/project/ajax_slideshow is using views and ajax loading :) Have not used it yet.
Comment #27
adraskoy commentedsubscribing
Comment #28
intyms commentedsubscribing
Comment #29
udig commentedThis is exactly one of the use cases which initiated the creation of the Ajax Slideshow module. It allows you to include in the slideshow unlimited amount of items and data due to the fact not all the info is loaded at the initial request. BTW, Ajax Slideshow is also using a view to manage the slideshow content (i.e. the data query).
Comment #30
kentr commentedFeedback from someone who has attempted to replace a Views Slideshow feature with Ajax Slideshow:
I ran into some limitations of Ajax Slideshow that made it non-trivial to replace my current Views Slideshow implementation with Ajax Slideshow.
In my opinion, ajax loading support in Views Slideshow would still be valuable, and I find it regrettable that Ajax Slideshow was introduced as an independent module rather than as an extension or addition to Views Slideshow.
Comment #31
kentr commentedIt's possible without too much difficulty... I've gotten a prototype going. I saw a tutorial on the web once, but couldn't find it again.
If anyone finds the tutorial, please post the link.
I'll post any updates as well.
Comment #32
redndahead commentedAs soon as I can get to this I'm planning on looking at ajax slideshow and see what I can steal...uh learn from it. ;) With credit where credit is due of course. If someone can get a patch going that would be helpful.
Comment #33
kentr commented@redndahead:
In case it's helpful, here's what I've done on this.
It's just stub code in dev, not a patch or anything that can immediately plug in.
Still needs CSS, it only works for images so far, and I'd like to put it all in a class so it can have multiple instances - perhaps extend an existing Views Slideshow class if there is one.
Try this to use it. Might need a tweak, because it looks for CSS classes to find the image that's being changed:
View setup:
I'd appreciate feedback on whether or not it can be integrated into the existing Views Slideshow framework, how to proceed, etc.
Comment #34
kentr commentedI've discovered a much better method, using a custom display plugin that forces pagination and a new function that returns a json response using
views_embed_view().Will post more soon.
Comment #35
izmeez commentedsubscribing
Comment #36
pomliane commentedSubscribing too.
Comment #37
birchy82 commentedWould be incredibly useful
Comment #38
momper commentedsubscribe - very useful
Comment #39
enkara commented+1
Comment #40
Asaasco commentedSubscribing. I too find Ajax Slideshow module unsatisfying.
Comment #41
geshido commentedsubscribe
Comment #42
kentr commentedClose, but not quite there. I'm working with the final orchestration of the js. But since my time is limited right now, I want to get it to a state that makes enough sense that I can hand it off to someone else for a bit.
Comment #43
scarvajal commentedSubscribing
Comment #44
lomo commentedSubscribe...
I'd also love to see Ajax loading without any need for visible pagination. I've got a block to be displayed in content which shows an image and text from a node and automatically runs from one slide to another. Ideally, it should load the slide data using Ajax so that the initial page-load doesn't need to contain all images. I've found I can use Ajax now only if I include pagination, which means the slides don't auto-advance, the user controls the movement to the next slide. This is nice for some use cases, but it's not the ideal solution for what I'm working on. Still, it would be nice to have this functionality in Views Slideshow instead of needing a separate module (e.g. Ajax Slideshow) to perform this functionality.
Comment #45
BigEd commentedSubscribe
Comment #46
kentr commented@LoMo:
That is my plan.
Comment #47
kentr commentedHere's a beta version for VS 6.x-2.x-dev.
Notes
We'll have to decide where to go from here, whether to post as a separate module, etc. I'll continue to make whatever bug fixes or feature additions I run into for my current & future projects, but I won't be able to put much time into enhancements beyond that. I'm often available for contract work to make additions.
Patches are welcome. The issue with the Use AJAX setting in the view display settings needs some attention from someone who understands the intricacies of the Views UI forms.
Roadmap
Comment #48
kentr commentedUpdated the README.
Comment #49
redndahead commentedAwesome I need to test. Could you do a quick diff between this module and singleframe so I can easily see what has changed? I like to get this in the main slideshow cycle module for 3.x
Thanks for doing this.
Comment #50
kentr commentedViews Slideshow hasn't changed. There's no patch - the file above is a standalone module that depends on Views Slideshow 2x.
In other words, unzip and drop into the contrib folder or the modules directory, enable the Views Slideshow Ajax module, click "Use ajax" in the form where you set the other slideshow details.
Last night I tested the Views Slideshow pager. Views Slideshow Ajax needs work for the pager to function.
Hmm, now I'm thinking of other possible issues...
Comment #51
momper commentedi tested together with views_slideshow-6.x-2.x-dev:
creating my first slideshow view i get:
i didn't try, if the thing is anyway working - only a s a first statement ...
Comment #52
kentr commented@momper:
Thanks.
Looks like you can safely ignore that error, but I've applied a fix to prevent it in the future.
Comment #53
kentr commentedNew version fixing above error and others.
Comment #54
momper commentedComment #55
lomo commentedMany thanks for what you've done here, kentr... sounds like it's exactly (or very close to) the same use case as mine, so I'll work on testing it over the weekend. :-)
Comment #56
ppcc commentedThis looks great, the Ajax works really well for me with a basic ThumbnailHover view.
In a more complicated view (still using ThumbnailHover) I have another element on the page that's using a collapsible fieldset via Drupal's misc/collapse.js, which stops working when the views_slideshow_ajax module is enabled, and I see this error in firebug:
Drupal.settings.viewsSlideshowSingleFrame is undefined
Comment #57
hey_germanoI'm using the module in #53 (thanks kentr!) and it seems to be working pretty well. I also checked out the ajax_slideshow module and found it to be ill-equipped to handle my use case.
One thing I've noticed with the module in #53 is that the "Items per page" view setting gets set to 1 when you mark the new AJAX box in the slideshow settings and hit "Update." Is that supposed to happen? It seems like that number should match the "Items per slide" setting in the style section, or maybe be Unlimited, but I don't 100% understand what's supposed to be going on behind-the-scenes here.
Comment #58
lomo commented@HEY_GERMANO: - I think it was designed with the "singleframe" mode in mind. If that doesn't fit your use case, you could try changing that to whatever number of views you have on the screen at a time (without the Ajax support). I also found the Ajax Slideshow module really didn't do what I needed and this one does it perfectly.
The Ajax part is really the icing on the cake. I'll have to learn more about how it's working behind the scenes to see if there's anything I could recommend for improvement, but I'm very pleased with this, so far. :-) (Many thanks, kentr!)
Comment #59
kentr commented@HEY_GERMANO
It is supposed to happen. In my limited understanding of the Views framework, I needed Views to serve up each slide as a page. So, an Ajax call has to return one item (which is a slide that could have multiple items on it).
It could very well be that my observation was obscured by the complexity of Views, or that there's another way to solve the problem.
I suppose it's possible to look at the value in Items per page before changing it, and apply that value to Items per slide.
My goal is to make it non-destructive, so that values for the settings which are modified are saved and can be restored if "Ajax mode" is turned off.
Comment #60
Anonymous (not verified) commentedJust wanted to say thanks @kentr, this is working great for me. Hopefully it can be rolled into the module by default.
Comment #61
kentr commentedIf not, I'll submit it to contrib as a separate module.
@redndahead: I'm happy to be a co-maintainer of this sub-module if it's included in views_slideshow. I'm in the process of deploying it to a couple of projects and making revisions as needed.
Comment #62
redndahead commented@kentr I appreciate your hard work. I don't think this will go in version 2. It'll have to be for version 3 if it goes in at all as is. Currently version 3 is somewhat stable. I have some ideas that I really need to implement before I'm ready to call it that. Unfortunately those ideas will probably affect any code you write against it. So separate module at least for now. I'll try to give more info when I can.
Comment #63
mangus580 commentedCan this module allow for dynamic addition of content to a slideshow?
I am trying to use views-slideshow to power a digital picture frame. One of my goals is to allow addition of images into a slideshow without the need to refresh the page.
Comment #64
JayFid commentedSeems like an interesting module, but it seems to be having an issue with returning more than one field. For my purposes, I had to fix this in the inc file, as well as allow the standard views pager to appear. However, it still seems to return things in no particular order, particularly having problems with the page number requested in the ajax request. Also, wouldn't using the jQuery cycle plugin's built in ability to specify callbacks for prev/next/pager click be a better way to extend the slideshow?
Comment #65
kentr commented@mangus580:
That's a primary goal, because I also value that feature, but I can't remember if I completed the feature.
Your beta testing would be informative :-).
Comment #66
kentr commented@JayFid:
What are the details of your situation? I've successfully used it to return multiple fields.
I haven't experienced this in my standard use. What are the details of your situation?
It doesn't work with the jQuery Cycle pager yet, if that's what you mean. I don't have plans to make it work with the standard Views pager.
What advantage do you see in that alternative? I used the "before" transition callback detailed on the jQuery Cycle docs here: http://jquery.malsup.com/cycle/options.html
Seems that using the pager click callbacks would require that the user actually click the pager. No? My goal was to avoid that requirement, allowing it to work whether the transition was triggered manually or automatically.
Comment #67
JayFid commentedAh, gotcha. I basically had to make it do things it wasn't supposed to do. And I'm not sure that I have the most recent version. I had to make it work with prev/next buttons for ajax, and the standard non-ajax views pager on the same page. Its for a store catalog, and presumably thats so people can still page without js. In what I had, it specifically only returned 1 field, and the calls out to /views/ajax?*** kept incrementing the page number, whether you clicked previous or next. Gotcha on using "before". I ended up making a small prevNextClick callback to check against isNext before changing the page number that's going to be called. Thanks for getting back to me.
Comment #68
kentr commented@JayFid:
Hmm, you do bring up an interesting point, though.
It would be cool if this could add to the "core" Views ajax paging system, sort of as a "transition type plugin".
I had a goal of using the existing Views Ajax response system as much as possible, but also tried to step out of the existing theme mold to reduce the bandwidth of the responses.
So, the response may not readily plug into the page element that Views is trying to put it in - or, rather - the markup of the response might not be what the Views CSS is expecting.
Comment #69
kentr commentedBTW, I have made some efforts to keep track of what page it's on to overcome some problems of interacting with pager elements.
It probably wouldn't be much work to adapt it to work with the Views pager in an intelligent way, add some more config options to give the choices, etc. If you want to make a patch, please do.
I can't remember if I uploaded my latest dev version, can check on that this weekend.
Comment #70
JayFid commentedYa, this would be a cool extension of the standard views slideshow. I started off using just the slideshow module to display a catalog of products, but it became clear that if the number of products grew past a certain point, just loading them into the page and hiding them wouldn't cut it.
The views Ajax response is definitely bulky. With what im working with right now, I have views returning just a nid, then preprocessing in the theme layer to build a full field (because i need a bunch of info from external sources, etc.) so I dont really see a way around using it. That's why I'm about to add a loading icon.
As for a patch, I've kinda hacked this up beyond recognition, but if you put the latest version up, I'll see about adding what I have to it. This is definitely something I can see using in future projects. Thanks.
Comment #71
mangus580 commented@kentr - from what I can tell it does not automatically add in any images that are added once the slideshow is active.
Also, any thought on it working with the galleria module for views-slideshow? or tips on another way to do fullscreen images?
Comment #72
kentr commented@mangus580:
Try this version to include new content that's added behind the scenes.
Expected result is that any new content that would normally be returned by the View will be automatically included. It seems to work correctly for nodes that are deleted as well. I haven't tried otherwise excluding a node, such as unpublishing it or changing the node's taxonomy.
Not sure about the galleria module. I haven't looked at that.
I'm using VSA to do mostly-fullscreen images. They're 750px wide x 1000px tall, positioned absolutely to be a page background. It works ok. The transitions are a little "jerky" with a standard synchronized fade. My first guess is that it's a problem with slow screen refresh each time the opacity level of the objects is changed.
Comment #73
mangus580 commented@kentr
VSA?
I will try the new version now
Comment #74
mangus580 commentedworks great!
now I just need a fullscreen version. I intend to use the browser in 'full screen' mode, so I need the picture to fill the browser window (and therefore, the fullscreen in fullscreen mode)
Comment #75
kentr commentedVSA = Views Slideshow Ajax...
I'm curious if this works in fullscreen mode. It has nothing to do with Flash, so if you're thinking of a flash-type slideshow with fullscreen, I doubt it will integrate off the bat. But could probably be made to do so, if the swf file can pull Ajax. Yet another intriguing idea... But you could get that with the standard Views Ajax mechanism, too.
But, if it's a javascript "lightbox" type fullscreen, this should technically work. It replaces the HTML inside the "slideshow container", so as long as the container stays constant and is the primary fullscreen element, it shouldn't matter that the inner content is switching.
Might need some theming adjustments to get the lightbox applied to the proper element.
If you can get a Singleframe mode Views Slideshow to go fullscreen, like with lightbox, then VSA would theoretically work with that out of the box.
Comment #76
kentr commented@mangus580:
Doesn't seem to work with Views Slideshow Galleria. Maybe a trigger needs to be attached to the navigation buttons.
I could hardly get Galleria to work at all...
Comment #77
mangus580 commentedI dont think galleria will work, as it loads with the page, with all the items expected.
I will look into using lightbox. i dont really care how 'fancy' the slideshow is, its for a digital picture frame. Too much fluff with something like that might be tacky.
Comment #78
3dloco commentedThank you very much Kentr!
I tested #53 for photo slideshow having 200+ images that are 600x600, 72dpi...and it is GREAT improvement!
Works great for me in Firefox and Chrome...but not in IE8.
In IE8 only the first image loads right away. Then, all the images start to load before slideshow starts.
Thanks,
KH
Comment #79
kentr commented@3dloco:
Bugger. Part of me says to heck with IE8 - if they can't keep up with the rest of the world, then... But, of course, IE8 represents a large percentage of the user base.
I'll look into it when I can.
It might not make a difference with IE8, but there's a more recent version above (#72).
Thanks for the feedback.
Comment #80
3dloco commentedThanks Kentr, I will grab #72 and advise if there is any improvement with IE8...
and I agree with you that it is most unfortunate that so many people still use IE8 ;{
update: I tested #72 and it does not work in in IE8....
Comment #81
mangus580 commented@kentr
could you describe how you do that 'full screen' positioning you talk about in #72? now that I read it again, using 1024x768 images, full screen mode on the browser etc, it should achieve what I am after.
Comment #82
kentr commentedHopefully this fixes the IE8 issue. Works for me.
There's also a minified version of the JS (via jsmin).
@mangus580: Did you get my message via your contact form about the full screen positioning?
Comment #83
3dloco commentedThanks Kentr!
I went ahead tested #82 and it seems there is no difference between #72 and #82; IE8 is still loading up all the images before starting the slideshow (it still works on all the others browsers ok).
-For example, for an album with 80 images 600x400px 72dpi (wxh) it get the following message at the bottom left of IE8
79 items remaining (Downloading picture http://example.com/files/imagecache/preset/imagename.jpg)
....then, when about 2 items remain then the slideshow starts.
--Also, I noticed that on IE8 Script Console, I get the following error:
'result' is undefined
Thanks,
KH
Comment #84
kentr commented@3dloco:
Did you clear your caches, etc? This is what you should see for views_slideshow_ajax_preload() now. I removed the "return result" line to fix the error you reported.
I didn't check on the issue of loading many photos at first. Didn't notice that in your previous message. It's definitely a major issue - defeats the purpose of the ajax loading in the first place. Nonetheless, it's surprising.
Comment #85
kentr commented@3dloco:
I can't repeat this. I've added a couple of images, but the number of items to load remains the same.
Are you sure you don't have some other funkiness causing all these images to be on the page? When you view page source, do all the images appear in the source?
Comment #86
rickvug commented@kentr What's the way forward here? Are you hoping to have this module ship with Views Slideshow or as its own project?
Comment #87
kentr commented@rickvug:
Hoping ultimately it will ship with Views Slideshow. Redndahead said that's not likely to happen soon, so I planned to add it to contrib as a separate module when I get a chance.
Comment #88
rickvug commented@kentr Thanks for the update. Either option is preferred, even if the code is exactly the same as posted here.
Comment #89
adraskoy commentedThis seems to be working very well now. A bug I had encountered a couple of versions ago has gone away. (Looping back after the end of the results wasn't working.) So far this is awesome! Thanks for your work.
The one thing I'm not certain about is how to get the manual controls back (start/stop/next/previous). Is this so far only for automatic timed advancement between slides? I haven't delved into the code yet to see what's happening there.
Again, great work! This is invaluable when you have any volume of data in a slideshow.
Comment #90
adraskoy commentedSince this is not yet a separate module, I'll just mention issues here:
1) Views slideshow (singleframe) options for counter and pager are not working correctly. They always indicate that there are three items in the view, regardless of the actual number.
2) Controls (start/stop/next/previous) do not appear when selected.
Comment #91
lomo commentedHaving finally got around to giving this a real test, I've found that the module seems to have a looping bug, presumably from a "count" variable somewhere getting mis-set. I've looked at the code, but nothing jumps out at me as being the likely location.
The following is true ONLY if the Ajax plugin (as released in comment #82) is turned on and used:
If the "pager" is turned on, there are 3 pager links for 4 slides. Clicking on them each, in turn, shows all four slides, so the links change.
Even harder to explain is that part of my view outputs a "class name" (plain text field) which is used to define the color of text on different slides. If that class isn't there, the text is a default "gray". In the first iteration of four slides, the first and 4th get the color class. In the second iteration, only the third does. In the third iteration, only the second does. In the fourth iteration, it's back to the 1st and 4th slides, and the pattern repeats.
For our immediate needs, since we are only using 4 or 5 slides, maybe it's simplest, for now, if we just load them all and forget about the Ajax for the time-being, but I thought I'd provide a little feedback about a potential bug. I can share my "Feature" (CCK content type, views, etc) used as the basis of this experiment, if you like, but it seems I can't attach it here, right now, for some reason. :-/
Comment #92
adraskoy commentedLoMo - looks like we're seeing the same issues. Repeatability makes debugging easier! Asides from the count always == 3 issue I'm also seeing differences in presentation when using ajax, but I haven't examined it yet.
Comment #93
lomo commentedThat's good to know, adraskoy. Since I hadn't already carefully read your post, I didn't see that you were also getting three pager items and that that was regardless of the number of slides there were. I had half-assumed that I would see four pager items if I added a fifth piece of content (e.g. an issue where the highest index value in an array gets substituted for a "count" of the array, etc.)
I really can't explain how the color class was missing on some slides and not others, nor why the missing field output moved from slide to slide during each iteration of the show. There are a lot of CCK fields in the view, some used more than once, for different purposes. Any of them, if missing from output, would make a noticeable difference, but it seemed only that one was not-quite-randomly left out of the output... and it was simply a class-name, exluded from display, then output as "plain text" during the re-write of another field. And most of my fields are output in that manner, so it really doesn't make sense. Indeed, as I suspected, since I've added another couple of fields (to my view) since, I don't see any issue with that particular one, now, but the normal "controls" are missing and the pager is still counting 3 out of 4 (in a predictable "musical chairs" fashion. If you go through the links in order, repeatedly, you see all four images, in their intended order.)
I suspect this has something to do with the fact the first image must load before Ajax comes into play, but why the pager is always limited to three items is a bit odd.
Comment #94
adraskoy commentedIn my case I'm not missing CSS classes, and adding more fields doesn't fix anything. I'm getting strange positioning of one element, but not consistently. It appears to be caused by the height provided in the style attribute of this encasing DIV, added by this module.
Regarding the counters, the count is generated dynamically with javascript by the views_slideshow_singleframe module. I think we'll need to modify the way it counts the number of available items to fix this problem.
Comment #95
Rob C commentedSubscribing
It would be very nice if this functionality is available.
Comment #96
3dloco commented@Adraskoy,
See if editing the views and setting/reselecting the your options/settings again solves your issue. Also regarding:
-Set the number of items in your View to 0 (unlimited). With this setting it works on Firefox, Chrome, Safari and Opera, but not in IE8 (all images load before slideshow starts), see #83, http://drupal.org/comment/reply/323366/3755442#comment-3709186
Hmm, the controls do appear for me and are working fine, so I am not experiencing this issue.
Regards,
KH
Comment #97
3dloco commented@Kentr,
When I view the page source all the images appear. This could be because currently I have the number of items on my views set to unlimited 0, otherwise I experience the same issue as Adraskoy (only 3 images load, regardless of the browser).
As far as caching/funkiness, I currently have the Boost (caching) module enabled and anonymous users are able to view the slideshow. However, I did clear the caches and disabled Boost caching on the view slideshow page I am still experiencing the same issue in IE8.
Thanks in advance for your help,
KH
Comment #98
jdln commentedI know its very difficult to predict but could anyone say roughly when AJAX loading for this module might be ready for a production site?
Thanks
Comment #99
kentr commentedThe pager doesn't work. I don't have a timeline on fixing that (or a need for it). Perhaps someone can provide a patch.
I suspect that the class name issue is related to the Ajax delivery.
The reason that only 3 items are shown in the pager is because there are, as far as jQuery Cycle plugin can tell. The Ajax functionality works by "faking" the existence of 3 DOM elements on the page:
So, since the 2nd & 3rd slides are initially missing the color class, I think the problem lies in the preload containers. Perhaps the DOM elements don't have the markup to match the CSS selectors. I can look at giving them the same markup as the first element.
@jdln:
In its most simple setup (no pager / counter), it's ready for production as far as I know. There may be some theming issues with the CSS classes as mentioned above, but if you don't see problems immediately then it's probably not a concern for you.
Comment #100
kentr commentedOh, that sounds like the possible cause. I'll look into that when I can.
Comment #101
adraskoy commentedChanging the view type to unformatted then back to slideshow and redoing the settings, and then setting the number of items in the view to zero fixed the issues I was having!
However, there is a new issue. One I encountered before which disappeared with previous patches:
Once the show has cycled through one time, the first slide reappears and then pops up repeatedly in place of all the other slides. The counter continues to cycle, I note. I'll see what else I can figure out.
Comment #102
adraskoy commentedAlso, the count is not quite right. There are 14 items and it's showing 16, with the first one appearing again in the extra slides.
Comment #103
adraskoy commentedI suspect that jqueryui.cycle is generating the count based on the number of slide divs, and that the two preload divs are adding two to the count. The singleframe js might need to subtract two if ajax is turned on.
Also, the preload divs have CSS classes called "0" and "1", which are not legal class names.
Comment #104
kentr commented@3dloco:
Why do you have it set to 0? The Ajax functionality is built to work with Items / page = 1. It should have changed your setting to 1 when you turned Ajax on...
Comment #105
kentr commentedComment #106
3dloco commented@Kentr,
The ajax functionality does set the number of items to 1, but with this setting only 3 images load for me, regardless of the browser.
So for now (to make it work) I set the number of items to unlimited before saving the view...sort of like a workaround (now I realize it :-)
Comment #107
lomo commentedI may be wrong, but I think if you have the Views setting at "unlimited", then all slides are loaded in the original page and Ajax won't come into play at all. (?) (To check that, you could look at the generated source code and see if all images are in there, as they are when this Ajax plug-in module isn't activated).
Comment #108
kentr commented@Lomo, you are correct.
@3dloco:
Initially, only 3 items should load: The original Views "1 item per page", and 2 items that are dynamically injected by javascript.
Are you saying that even if you let your slideshow run, it cycles through those 3, and no others besides those 3 ever appear?
That would definitely be a bug...
Or, are you doing this to get the pager AND / OR counter to work? If this is the case, it won't work :-). The pager and counter flat-out don't work with Views Slideshow Ajax at the moment...
Comment #109
3dloco commented@kentr
Ahhh ok, apologies for the confusion...Taking a step back, looks like what you are describing is exactly what I did as I was looking to get the counter and pager in there so I set the number to unlimited (0)..and since I did see an improvement in the load time with this setting (except IE) I thought it was alright ;-/ (so disregard my previous testing regarding IE)
Comment #110
BenK commentedSubscribing
Comment #111
BigEd commentedI have used it a few times now and it works great, I do get a weird glitch though.
Rather than fade all slides, Every other slide just appears as if even numbers work and odds dont have a fade effect. Is this somthing that anyone else has spotted?
Other than that its a great little module great work!
Comment #112
lomo commentedDo you see this behavior ONLY when the AJAX module is turned on, biged? I never saw that -- we ended up using a "pager", so I'm not currently using the AJAX plugin, since it didn't work with the pager, but otherwise I didn't see it change the display or transitions of slides when I was using it.
Comment #113
gmclelland commentedsubscribing
Comment #114
adraskoy commentedKentr, thanks for you excellent work on this. Regarding pagers and counters, are you planning on pursuing support for these, or would like others to work on those features?
I expect you have some idea of the issues around implementing counter/pager support. I'd be interested in helping if you care to suggest an approach and what you think the challenges might be.
Comment #115
anruethersubscribing
Comment #116
kentr commentedI can't address the pager soon. I've done a bit of work on the counter, but nothing stable yet.
I'm completely open to patches on these issues.
Pager:
The main issue with the pager is that it relies on the number of DOM elements, and VSA uses a fixed number of "virtual elements": 3 preload containers into which the incoming slides are loaded. So the distro pager will always show 3 items, and the content of those items will vary as new slides are being loaded via Ajax.
I don't know how to get around this to make the jQuery Cycle plugin's pager work. Adding DOM elements for each slide seems (in my mind) counterproductive to the original purpose of Ajax loading support.
Perhaps a custom pager is in order, modeled on the Cycle plugin's pager. Another possibility is simply adding empty DOM elements, so that the jQuery Cycle code will include these in the count of items when rendering the pager.
FWIW, I've created a project page: http://drupal.org/project/views_slideshow_ajax,
but because I'm learning about CVS, tagging, etc, the code is not yet accessible via that project.Probably, this thread should continue as the primary discussion on the project until I navigate the Drupal release tagging standards and whatnot.There is now a release on the Views Slow Ajax project page. Please move all discussion in the issue queue there.Counter:
In the current version, there's a Javascript settings variable
Drupal.settings.viewsSlideshowAjaxthat stores meta info for each slideshow on the page. In these, there isslideshow_countandcurrent_item, which may serve as override values for the counter.current_itemis just set iteratively, though. It doesn't accurately represent the slide's place in the total views result set (so, it won't jump around for random slideshows, for example). Perhaps another property needs to be added along with another return value in the JSON response to track the slide's actual position in the result set.Comment #117
kentr commentedI just updated the project page and added the latest release: http://drupal.org/project/views_slideshow_ajax.
Please take all discussion over the the issue queue here: http://drupal.org/project/issues/views_slideshow_ajax?status=All&categor...
Comment #120
kentr commentedAdded beta support for slideshow controls.
http://drupal.org/project/views_slideshow_ajax
Comment #121
rwt commentedAny similar solutions for version 7.x?
Comment #122
mariomc commentedA similar solution for version 7.x here would be awesome as well!
Comment #123
kentr commented#1074030: Port for D7